Shifts app UI behind config option

Closes #2287
- adds helper for checking whether to show apps UI or not
- hides app UI from settings page
Detect tag.hbs template in themes

closes #2320
- changed detection from "tag" to "tag.hbs" in "frontend.js" contrroller
Add test for tag.hbs template.

refs #2321
Replace JSLint with JSHint.

closes #2277
- Added ES6 linting to core/client/
- Fix typeof array comparison
Merge pull request #2278 from halfdan/jshint-es6

Replace JSLint with JSHint.
Switch to bower for client assets.

fixes #2272
- Remove libraries from shared/vendor
- Remove libraries from client/assets/vendor
- Add bower to package.json and postinstall
- Add bower.json with dependencies
- Add scripts from bower_components to concat/uglify
- Fix tests
- Serve jquery from /ghost/built/theme/
Merge pull request #2326 from halfdan/bower

Switch to bower for client assets.
Merge pull request #2294 from shashankmehta/apps-config

Shifts app UI behind config option
jsHint fixes

issue #2294

- bad merge order = broken tests
Update validator to 3.4.0

Closes #1379

- Convert to new api usage for both server-side and client-side
- Provide way require a negative response for boolean methods in
  default-settings.json
- Add field validation functional tests
  - Settings (General)
    - Title length validation
    - Description length validation
    - postsPerPage, numeric, min, max
  - Settings (User)
    - Bio Length validation
    - Location length validation
    - Url validation
  - Login
    - Email validation
  - Editor
    - Title required validation
Merge pull request #2286 from jondavidjohn/validator-upgrade

Update validator to 3.4.0
Change validation for posts 'page' attribute.

issue #2305
- changed validation for 'page' to expect '0' or '1', rather than 'true' or
  'false'
- Added a 'can change a post to static page' test
- Added a 'can change a static page to a post' test
Merge pull request #1 from halfdan/add-test-tag

Add test for tag.hbs template.
Remove unused libraries.

refs #2326
- Remove unused libraries from core/client/assets/vendor/
- Add folder to .gitignore
- bower install is now handled by grunt init
Merge pull request #2335 from halfdan/bower-maeh

Remove unused libraries.
Merge pull request #2307 from Gudahtt/static-page-validation

Change validation for posts 'page' attribute
Fixing CodeMirror paths in GruntFile.js
Merge pull request #2321 from polygonix/2320-detect-tag-hbs
Bower dependency order OCD
Update system emails to come from ghost@blog.url

Closes #2145