Feature/add basic tests

* Reorganise dir structure
* Move task functions into `lib` directory. 
* Use Vows as test framework.
* Implement basic tests (requires further work)