UIUC Shibboleth, JSHint changes, general JS code review

We've merged to v1.7.1 and in the process did a code review of the JS files. Stuff in this pull request:

1. Add a class to support Shibboleth from behind a proxy.
2. Run all the JS files through JSHint and fix obvious errors.
3. Fix indenting on all the JS files so that it's consistent.
4. Try to avoid polluting the global namespace when possible.
5. Add JS hooks to support custom filter options.
6. Upgrade MarkerWithLabel (old one didn't seem to work with the latest Google Maps).
7. Missing import in views/contact.py