Re-order the checks in core_sieve so they all function correctly (fixes permission checking for commands)
Initialize PermissionManager in irc.py instead of bot.py
Merge pull request #244 from daboross/patch-move-permissions-initialization

Initialize PermissionManager in irc.py instead of bot.py
Merge pull request #245 from daboross/patch-reorder-core_sieve

Re-order checks in core_sieve
Switch ratelimiter to per-chan
Handle the case where we are force-stopped while restarting
Fix permissions not registering if multiple groups have the same permission
Document ALL the paramater types
Merge pull request #248 from daboross/patch-major-documentation

Document all the types
Merge pull request #247 from daboross/patch-fix-multiple-group-permissions

Fix permissions for multiple groups
Merge pull request #246 from daboross/patch-fix-restarting-killing

Handle the case where we are force-stopped while restarting
Use the bot's debug logger for printing input instead of 'print'
Ignore non-python files (files not ending in .py).

Also decode the filepath if it is bytes instead of str. This fixes 'Command already registered' errors when reloading plugins.
Four logging/bot changes:

- Add a debug.log with level=DEBUG.
- Change the time format in the log files to [%Y-%m-%d][%H:%M:%S]
- Add a [%H:%M:%S] time prefix to console output.
- Don't create connections until all plugins are loaded. This is to ensure that all plugins using server output are loaded before server connection begins.
Merge pull request #249 from daboross/patch-fix-reloading

Fix reloading plugins
Rewrite log.py, changing to use .format instead of % as well as add a [{server}] prefix to all logged messages
Add input.has_permission convenience method
Implement a lot more permissions methods. Also, make permissions not require CloudBot.
Revamp admin plugin
Merge pull request #250 from daboross/patch-bot-logging-updates

Logging changes in bot.py