The XMPPConnection class now has wrapper for del_event_handler method of ClientXMPP class.
Basis for extension of testing backend for presence.
Only run 3to2 during actual install steps

While installing, tools like pip first call `setup.py egg_info`,
followed by `setup.py install`. With the previous behaviour, this would
cause the sources to be run through 3to2 twice.

As a result of this, some parts of the code became mangled up, see for
example issues #232.

Another benefit of this change is that install time is reduced somewhat,
since a typical install will now only run 3to2 once instead of twice.
Simplify Dummybackend init
Register regex-based bot commands
Unittest current callback_message behaviour
Unittests for access controls
Detect and execute regex-based commands
Remove unused import
Allow regex commands to have overlapping regexes

This will allow messages to match multiple regex-based commands
simultaniously. When this happens, all matching commands will be
executed.
Allow passing re flags to regex commands

This allows the regex behaviour to be adjusted, such as by setting
re.IGNORECASE in order to perform case-insensitive matching.
Move decorators into a dedicated submodule

I've mainly done this because Sphinx doesn't pick up on functions inside
`errbot/__init__.py` so @botcmd and @re_botcmd were going undocumented
in the docs. This change ensures they can be referred to easily in the
docs.

While at it, the docstrings for these two decorators, as well as
@webhook, have been greatly expanded.
Adjust the error returned when lacking bot-admin privileges

I accidentally broke it bit during refactoring :)
Added presence related method stubs to base plugin class.
Ignoring some file types.
Added the handler stubs to base backend and callback methods to ErrBot class.
Added basic Presence class for backends with minimal interface.
Added stubs for event methods to xmpp backend, registered the handlers.
Merge pull request #250 from zoni/re_botcmd

Regex-based bot commands
Merge pull request #248 from zoni/232

Only run 3to2 during actual install steps