- plugins/commands.py: add admin-only eval command
- add IrcChannel class and basic channel (FJOIN/QUIT) handling
- Move SQUIT/QUIT handling code to a shared removeClient function
- Unfortunately, this causes a regression where the users and channels indexes aren't purged on a netsplit :(
- Move config handling into separate module
- Implement identify and status commands, currently only supporting the admin account defined in the config. Closes#1.
- Move proto.add_cmd to utils.py, rename _msg() to msg()
- Allow sending the command name as an optional argument in add_cmd
- Add catch-all exception handling in plugins to prevent them from crashing the program!
- Server enumeration, with handlers for BURST (introduction to uplink), SERVER (introduction of uplink's other leaf servers), NICK, and SQUIT (closes#2)
- Store UIDs instead of nicks in the user database - this makes the protocol a lot easier to work with.