Initial commit for obr-bot. This is a fork of CloudBotIRC/CloudBotRefresh (on GitHub).

I'm doing a fresh re-init for this project. These sources are changed quite a bit from CloudBotRefresh's, when it was cloned.
I'm doing the re-init, because this project is going in a very different direction than CloudBot, and will *not* likely need any updates or shared patches.
Remove add_hook method, as it isn't really needed. It might be re-added.
Remove logger from event
Add permissions.view.self permission required to view your own permissions. permissions.view is already required to view anyone else's permissions.
web.py isn't actually used anymore. I'll bring it back if we need it again.
Requests isn't need either anymore
Formatting
Terminology changing
Redo a bunch of channel stuff, finally implementing Channel and User into Connection. Also, merge developer_mode and logging config sections, as only logging developer options were left there. Move core_tracker to tracking plugin, and reduce it's functionality a bunch. All of that stuff is now handled by Connection directly iteself.

Also, add a CaseInsensitiveDictionary class in util/dictionaries.py, so that connections and channels can have case-insensitive dicts for channels and users.
Simplify some stuff in sieve
Add github url to VERSION reply
Move bot nick change detection to connection.py
Add a nick EventType
Add an eval command
Chan fix
Fix error
Allow multiple lines to be sent using event.message
Add a track_nick method to fix some errors
Remove wait_for_message on event, in favor of event.conn.wait_for
Make wait_for return a Future directly, instead of being a coroutine. This allows for canceling of the Future, and thus allows for waiting for two messages, then canceling one when you receive the other.