Make modules live reloadable
nickserv: Add a seperate module that implements R:nick extban type
nickserv: Fix some race cdns related to a user logging out mid-operation
nickserv: Fix a silly bug
Make nicklist comparison for R: extban case insensitive
Implement logout action
nickserv: Seperate actions for login permission action and post-login action
cmode_b: Re-calculate extbans after a user login or logout
installer: Don't delete everything, just py/pyc files

This way we still get fully fresh code, but we don't lose logs and storage.
Refactor LUSERS command to count every time.

The performance penalty is negligible (on the order of 100μs on my machine),
and it clears up all kinds of desync bugs (such as Issue #28).
Note that I changed the format of the high water marks in the storage file,
so they will effectively get reset when you first start using this version.
nickserv: Hook into PASS so a PASS during register translates to a login
Fix a bug in LUSERS

Use of .format(**counts) causes problems because counts is a defaultdict,
so entries with value 0 aren't present in **counts (which effectively casts to a dict).
We slightly edit the syntax to avoid the conversion.
Modify nickserv/cmode_b interaction so that nickserv calls cmode_b instead of cmode_b handling an action from nickserv
Fix a typo in chanserv
Change cloaking algorithm to SHA256
As requested by ekimekim in #78
Merge pull request #79 from Heufneutje/fix-cloaking-sha256

Change cloaking algorithm to SHA256
Fix PRIVMSG/NOTICE messages being thrown back to the source server
Also care about all the servers between us and the source server
And once I realized we only care about the closest hop...
And we need to care about the local server