Feature coverage

Features:
- Setup correctly for unit testing
- a tiny bit more object orientated
- Updated setup.py
- folder structure ready for integration testing
- more build steps
- added colorama