Add NICKSERV as a command alias to nickserv

Apparently this is needed for compatibility with some clients.
nickserv: Protect timer.cancel() calls with a timer.active() check

I had assumed a timer.cancel() on an already-fired timer would be a no-op.
Instead it throws an exception. This fixes that.
nickserv: Track pending inserts to register nicks

This prevents a user from registering too many nicks.
Without this check, a user could send two register requests in rapid succession,
and the second could be checked before the first is finished inserting.
nickserv: Some nicer error messages
utils: Implement a safer version of defaultdict which auto-deletes keys when value == default
nickserv: Replace usage of defaultdict with new SafeDefaultDict
Merge pull request #45 from ekimekim/dev/0.3

Some misc fixes