Makes the Ghost application more express middleware friendly.

refs #827

- Moves ./index to use Ghost in a similar manner to how someone uses
Ghost as an npm module.
- Allows Ghost to be cleanly mounted on another express application
on any arbitrary endpoint, all you need to customize is the mount path.
Don't send HTML on post save.

fixes #3956
- adjusts post serialiser to not send HTML content
Prevent editor title from being overwritten

Closes #3955
- Change titleScratch from being bound to the title to being
  set when entering the editor so it is not overwritten on a
  model refresh.
- Ensure that the "unsaved content" dialog is shown when there are
  changes to the "scratch" fields after a post-settings-menu change.
- Add tests to prevent regression.
Merge pull request #3957 from halfdan/3956-we-dont-like-html

Don't send HTML on post save.
Stop packagePath variable from being undefined
Adds (Never) for users who haven't been seen

Closes #3970
Remove form focus halo

No issue

- Removed the blue halo from around focused form elements
- Slightly refactored the forms to target less text inputs and have cleaner syntax
Merge pull request #3971 from javorszky/iss3970

Adds (Never) for users who haven't been seen
Merge pull request #3972 from PaulAdamDavis/form-refactor

Remove form focus halo
Ability to create custom template files for custom tags. Eg. `tag-design.hbs`
Merge pull request #3963 from jaswilli/issue-3955

Prevent editor title from being overwritten
Merge pull request #3968 from thaiphan/master

Stop packagePath variable from being undefined
Merge pull request #3902 from Chrisui/custom-tag-templates

Custom template files for custom tags
Merge pull request #3867 from hswolff/middleware-work

Makes the Ghost application more express middleware friendly.
Post Settings Menu - Step 1

closes #3936
- Implement new PSM
- Hook up close action
- Automatically close when view is destroyed
- Close on click and when pressing ESC