* refactor how templates will be included to work with karma test runner
* refactor Router
* refactor for better testing