Fixed unit tests
Removed the majority of the ?? errors for revisions

- The only remaining one is if the build fails to clone the repo (due to a bad hg clone or server shutdown)
Added try + catch to json loading so that we don't get a tracelog when connections are closed part way through
Attempting to fix a crash where we have a None value as the revision
Replaced ?? with None values to be more clear
Merge branch 'front-end' into staging

Conflicts:
	master/buildbot/status/web/base.py
Use friendly name on step details page
Clarify description of what 'Resubmit Build' does
Clean-up of Force Build dialog
More improvements to Custom Run Dialog text
Change footer to say that Katana is a fork of BuildBot and provide link to GitHub URL
Handle an error when polling a repo
Fixed a bug where friendly names were not for dependencies on non multi master servers
Show display-URL on codebases page as a link
Fixed friendly_name for artifacts
Added analytics to katana

- Note: Add c['analytics_code'] = "XYZ" to the master config to get this to work
Display human-readable codebase names on Codebases page
Merge branch 'staging' of https://github.com/Unity-Technologies/buildbot into staging
Merge branch 'front-end' into staging
Disabled hot keys due to errors