Changed ember models to use moment for dates

Closes #2888

-Added moment-date `DS.Transform`
-`models/post` and `models/user` both use `DS.attr('moment-date')` in
place of `date` now.
Fix HTML preview rendering on the main screen

closes #2904
- The `posts/post` template now takes its HTML from the post model instead of using the editor's markdown component
Implement a Generic Uploader - #2886
Merge pull request #2905 from appleYaks/preview-markdown

Fix HTML preview rendering on the main screen
Removed API dependency from mailer and api/mail

Fixes #2836.

* Mailer now only handles sending email and initializing settings. Instead of adding new notifications there, it just sets flags on its own object.
* Mailer now checks for the presence of "to". If there is none, it fails. You should really pass a full mail object complete with "to", "subject" and "html", otherwise it's partial content.
* Therefore Mail API doesn't check for the existence of the "to", and doesn't get the email from settings and substitute that
* index.js now has a method that adds the notifications. I figured adding those THERE is probably better than individually in every module. It is, as the comments say, can be made extensible
Uncommenting casper screenshots

- WHOOPS!
Add shadows to PostsListView and the adjacent HTML Preview; Fix preview render

closes #2906
- add a utility function to add classnames to targets, retrofitted from clientold to accommodate `Ember.run.bind`
- create a content-preview view that tracks its scrolling
- add a scroll handler to the existing PostsListView
- The `posts/post` template now takes its HTML from the post model instead of using the editor's markdown component
Fixed publish button not updating with model  change

Closes #2908
- Changes `willPublish` from `oneWay` property to computed property.
Merge pull request #2912 from javorszky/iss2836

Removed API dependency from mailer and api/mail
Merge pull request #2886 from lholmquist/wrap_uploader

Generic Uploader component
Merge pull request #2909 from novaugust/publish-button-reset

Fixed publish button not updating with model  change
Split PostController amongst new Editor/PostSettingsMenu Controllers

closes #2910
- create EditorController, PostSettingsMenuController
- remove `posts.post` controllerName dependency on EditorRoute/NewRoute
- `{{render}}` the PostSettingsMenuView with its own controller
- break up properties/methods from PostsPostController into all three controllers
- fix EditorRoute pagination options to now be comparable to PostsRoute
- add NewController to force NewRoute to refresh editor with blank model. Identical to Editor's
- EditorController and NewController are based on a shared mixin
- NewView created, templateName is 'editor'
Upgrade to Express 4.0

no related issue

- Updates package.json packages, adding express middleware packages
 that have been broken into their own modules

- Updates controllers/frontend.js to use the new Layer object that Express 4.0
 has.  Requires some monkey-patching as the Layer object isn't explicitly
 surfaced, however it should be safe to do.

- Moved the setup of routes into middleware/index.js because they need to
 be added as a middleware function before the 404 and 500 handlers. This is
 no longer possible with the old app.use(app.router) as that has been removed.

- Cleaned up middleware/index.js to make it compatible with Express 4.0.

- Simplified the way themes are activated and enabled when they are activated.
 The new handling is simpler, yet should still cover all the use cases that
 previously existed.

- The entire flow of activating a theme through middleware should be a little
 more centralized, letting it be easier to read and maintain.

- Moved every routes/*.js file to use an individual express.Router() instance.
Use loader.js from bower.
Make debug an authenticated route
Merge pull request #2603 from hswolff/express-upgrade

Upgrade to Express 4.0
Merge pull request #2911 from appleYaks/editor-controller

Split PostController amongst new Editor/PostSettingsMenu Controllers
Merge pull request #2907 from appleYaks/shadows

Add shadows to PostsListView and the adjacent HTML Preview; Fix preview
Merge pull request #2914 from rjackson/use-loader-from-bower

Use loader.js from bower.
Handle invalid post ids in editor route

No issue
-fail fast if an invalid post id is passed into the
 editor route to prevent an unnecessary network request
 for all posts
-if post id is valid but post does not exist, transition
 to Content screen instead of returning an invalid model