Nickserv

This branch adds nickserv. It is based on db-services branch.
I did consider this (though I didn't know about `isValidNick`, thanks) - note that if a user's nick is equal to what it would be forced to, `checkNick` ignores it.
Also, `registerNick` (which gets called by `handleAdd`) already checks that the nick is unowned (line 189).