Reworked plugin framework

Plugins now should be in separate repositories/packages and use
namespace packages
Updated setup.py

Switched from distutils to setuptools
Added 'irc' as a requirement
Fixed .gitignore
Merge branch 'plugin-restructuring' into dev