Revamping project structure.

I have made considerable changes in the project structure that go
towards a few goals:

* Easy project bootstrap
* Running tests with ease
* Test coverage
* Improved readme
* Adding continuous integration support