Reach Editor parity with Ember

closes #2426, closes #2781
- Concatenate vendor files on change of js in core/shared/
- Editor subcomponents communicate through editor controller
- Add all the markerManager stuff to its own mixin
- make markers a shared object for all that mix it in. makes it easier to use helper functions in different modules
- add getMarkdown(), returns an object with two keys: one with the markdown string with markers, the other without
- Set CodeMirror, markdownPreview css scroll class with util
- Create `scratch` prop in editor, prevents a save on the model from wiping out image markers due to markdown bindings
- Clear markers when codemirror is destroyed
- Editor controllers' `isDirty` checks `scratch` !== `markdown`, and the model's `isNew` and `isDirty` properties
- Add modal dialog alert when transitioning out of the editor with an unsaved post
- Move editor htmlPreview image upload handler to EditorControllerMixin
- Add editor and markdown-preview actions to handle image upload start/finish
- disable codemirror when an image is being uploaded, re-enable on success or failure
- and various other things