DI spike completed

Integrated express-dependency-injector and some of the structure that the express-dependency-injector-example project uses.

Specifically:
- A route is bound to a Controller which is a module that exposes a constructor and has a method corresponding to the route e.g. user.ts now has methods "get" and "post" which map to /login GET and POST methods.
- A service or repository also use the constructor module pattern.
- 3rd party dependencies can be injected if they use the constructor module pattern, if not they can be wrapped in a simple module e.g. UserRepository and CrypterService
- Also added some plumbing code from the example, specifically RouteConfig.js and DiConfig.js. Both of these pieces of plumbing code parse json files (route.config.json and di.config.json) to set up the routes and dependency injection of services into controllers.

This pull request also includes changes to package.json and commits to the typescript definitions folder to make new workspaces work easier.

Please have a review and let me know what you think. :)