Refactor templating and module metat-data

**WORK IN PROGRESS**

@Schoonology - if you have any strong opinions on the following changes, let me know. Everything is in place, still working on getting all the tests to pass and updating the server / editor.

 - refactored ModuleFactory to reduce repeated code in individual factories
 - added edit support to factories (see: `factory.create`, `factory.setOptions`, etc)
 - added various model factories (user, email, session)
 - refactored the data source factory to allow multiple connectors
 - moved all module options to module.json
 - added project templating
 - created empty and mobile templates
 - moved project template into its own factory