asyncio IRC client proof of concept

Connects, reconnects on lost connection, parses IRC commands and responds
to PING.  Also shuts down gracefully.
Add RFC2812, and extract names for numeric replies
Better message parsing and abstraction, more docstrings
Merge IRCProtocol and IRCClient into a single persistent asyncio.Protocol
Start adding some proper event and action flow, make log more useful
Add IRCUser representation, handle PRIVMSG and NOTICE
Move old unit tests in preparation for new framework
Make IRCUser less horrible, fix IRCClient.config
Start work on unit tests for IRCClient
Create a framework for IRCClient callback tests
More/better IRCClient event testing, fix NICK handling
Massively expand IRCClient's API
Update documentation build, and make it easier to regenerate sphinx-apidoc
Even better event testing, including some that don't pass yet
Extend tests to cover all IRCClient events, add quit command
Implement IRCClient features to make event tests pass
Handle the IRC server truncating requested nicks
Merge IRCMessage.trailing into IRCMessage.params, as per RFC2812
Fix silly documentation typo
Add test coverage of IRCClient commands