Cloud fixes

Fixed cloud controller "find user" functionality (query was
malformed which wound up simply returning the first user).
Added error logging to cloud controller.
Fixed error handling in aws and openstack modules.
Removed schema requirement for "tenantId" and "region" OpenStack
options, removed "tenantId" from default template (can cause
issues with pkgcloud + OpenStack).
Added device validation to addUser API, fixed AWS VM setup bypass
Cleaned up "users" controller

Improved readability and error output:
Standardized execution order of error cases
Updated each API to add error cases where necessary (500, 404, 400)
Added comments where necessary
First stab at extended logging

Added timestamp logging.
Turned on logging to log file (text, not JSON).
Added log route as first route of Express server.
Debug logging will log every API request:
  Req JWT username (if possible), IP, method, and URL; res code
Silly logging will log every API request:
  Req JWT (if exists, shortened) and JSON; res JSON
Fixed response codes/JSON msg for '/changePassword' API

Different way of responding to requests was causing log glitches.
Also, was previously sending status code 400 instead of 500.
Add Apache-style HTTP request logging
Fix token subject field for Gruntfile created admin JWTs
Merge branch 'master' into console to capture all the changes

Conflicts:
	.gitignore
	package.json
	server.js