Add functional tests for admin navigation bar and menus

issue #2273
- Check that menu nav items exist
- Check that menu nav items are labeled correctly
- Check that menu nav items have correct URLs
Added populate last login time

closes #2515
- sets last_login when user is saved if user status changed to active
- added integration test in user Basic Operations
Fixed check for a theme's custom error.hbs:

Closes #2513
- Checks for property `error.hbs` on active theme
- Added unit test to ensure `error` view is rendered when activeTheme has
  a custom error template.
- Removed unused variable, `userErrorTemplatePath` from errorHandler
- Refactored errorHandler.`updateActiveTheme` to take one argument, the new active theme, and to then check if the active theme has an error.hbs
- Changed errorHandler unit test to use rewire for mocking config.
in some cases the git protocol cannot be processed (port blocking or other reasons) with https it should work for everyone
Merge pull request #2450 from jaswilli/issue-2273

Add functional tests for admin navigation bar and menus
Merge pull request #2516 from novaugust/last_login

Added populate last login time per #2515
Ghost footer outputs minified jquery in production

Closes #2524

- Added minifying jquery in grunt prod task

- Add test coverage for altered jquery
Remove second PUT request on image save

closes #2557
- replaced model.save() with model.set()
Use SVG version of travis build status badge
Merge pull request #2517 from novaugust/theme_error

Fixed check for a theme's custom error.hbs
Merge pull request #2558 from sebgie/build-fix

Remove second PUT request on image save
Merge pull request #2545 from joeljfischer/minify-jquery

[WIP] Ghost footer outputs minified jquery
Build correct path on image upload when config has custom content path

closes #2563
- build path relative to imagesPath (which contains the custom content path)
  instead of appRoot
- added test for custom content path
- added logic to tests for Windows url building to handle cases where Windows
  functionality is being tested on a unix operating system
Merge pull request #2561 from t3chnoboy/master

Use SVG version of travis build status badge
Merge pull request #2552 from hschaeidt/master

in some cases the git protocol cannot be processed
Merge pull request #2566 from jaswilli/fix/issue-2563

Build correct path on image upload when config has custom content path
Refactor the API route tests to use supertest

close #2443
- Refactor API tests from `/core/test/functional/api` to
  `/core/test/functional/routes/api`, using supertest instead of request
- Remove `core/test/functional/api` folder
Removing test-api from Gruntfile.js

closes #2443
Merge pull request #2512 from surgesoft/issue-2443
Added email sending endpoint to the API.
closes #2550

- Added new API module named 'mail'
- Added routes for the mail endpoint
- Added 'send a test email' button to the debug settigns page
- Added handler to this button which sends and AJAX request to the mail API endpoint