Updating dev dependencies

refs #3795

- updates all dev dependencies to their latest version number
- jshint now complains about the Promise global, removed it from predef in
  lieu of a better solution
- changes in should require minor updates to the tests
- tests are passing and all major grunt commands appear to work: clean,
  init, prod, validate and release
Merge pull request #4054 from ErisDS/dev-deps

Updating dev dependencies
Support --reporter and --reporter-output when running tests.

When running any Grunt task that runs tests with Mocha, the two
following command line options are now supported:
- --reporter: allows to specify a reporter, default is 'spec'.
- --reporter-output: allows to specify a file where Mocha's output will
  be stored.

These two command line options make it easier to retrieve and parse test
results when tests are run on a continuous integration platform like
Jenkins.

Fixes #4038.
Merge pull request #4039 from misterdjules/output-tests-results-to-files

Add option to specify reporter and output file via grunt.
Add jscs task to grunt file and clean up files to adhere to jscs rules.

resolves #1920

- updates all files to conform to style settings.
Merge pull request #4001 from hswolff/jscs

Add jscs task to grunt file and clean up files to adhere to jscs rules
Updating express to 4.9.2 & related packages

ref #3795

- express updated to 4.9.2
- express 4.9.0 introduced res.sendStatus() to replace res.status().end()
- we no longer need express-session, connect or cookie-parser
- body-parser, busboy, compression, express-hbs, morgan, all bumped to
  latest versions as well - there doesn't seem to be any breaking changes
Merge pull request #4061 from ErisDS/issue-3795

Updating express to 4.9.2 & related packages
Add Tab components

Closes #3937
- Add ghost tab components
- Remove extra container div from Application view
- Move right-outlet viewing logic to application level
- Prepare PSM.hbs for tabbing