Thanks to: * Robert Schetterer for convincing me to make things more modular, plus weeks worth of patient debugging * Petr Smotek for writing the MySQL auth and userdb modules