Merge pull request #10 from blackwithwhite666/master

Some refactoring
Merge pull request #11 from blackwithwhite666/master

Fix dependencies
Merge pull request #12 from blackwithwhite666/master

Add support for greenlet