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.
Fix floaring header gradient in FF and settings images

No issue

- Corrects the syntax used for the floating header gradient so it now gets prefixed correctly for Firefox
- Removes padding from `<button>` elements (fixes padding around images in buttons)
- Adds display: block; to settings images to prevent a Webkit bug which adds space under the image
Apply JSHint to test files.

closes #2666
- Add new jshint:test task
- Fix jshint errors
Merge pull request #3953 from halfdan/2666-jshint-test

Apply JSHint to test files.
Merge pull request #3952 from PaulAdamDavis/fix-what-libsass-broke

Fix floating header gradient in FF and settings images
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.
Replaces sendmail with direct

Closes #1538
* rips out sendmail
* adds direct
* updates nodemailer to 0.7.1
* changes unit tests for mail
* changed integration tests for mail
* adds mail api tests
Force apps flag to be boolean in config API

ref #3969

- it shouldn't be possible to set keys via this flag