Refactor.
Bug fixes and add more compillers.
Bug fixes.
Add LICENSE, docs and setup.py