#2290 - changed text to label for TOS checkbox
some changes to left nav to be more accessible
Merge branch 'master' of https://github.com/Stanford-Online/class2go into giulio-tpg-report-2290
made announcement expand/collapse UI much more user friendly
add hidden descriptor to dropdown menus to inform keyboard navigators of dropdownn status
enabled tab selection on left nav headings but added link following prevention
added accessible features to left nav
reordered html order of arrow/save/submit buttons for accessible logic
added quiz attempts hidden-accessible informational span
cleaned up code to be more elegant
Create generic manage.py tools infrastructure

* Move certificates/ toplevel under tools/
* Create tools/aws directory
* create aws_getinfo target, which gathers information about the hosts
  in our host groups for use in system startup and configuration
Check in candy components for chat support

* Add candy chat system components for serving from static/
* Proptotype candy component delivery to /course/handle/chat
* Introduce JABBER_DOMAIN variable and document it in
  database_example.py
Initial chat on course home page demo prep

* Embed candy page in iframe on course home page above announcements
* Customize Candy CSS to fit into the look and feel of class2go somewhat
  more
Chef configuration to install ejabberd

* Chef cookbooks for installing ejabberd and doing simple configuration
Fixes to ejabberd recipes and courses/views

* Rewrite of ejabberd installation recipes to avoid wiping mnesia tables
  unless this is a first-time install.
* Also, recipe uses octal mode notation only (strings removed)
* Also, template for ejabberd defaults file is actually a template
* Fix in courses/views to use hasattr instead of getattr
Less confusing xml validation msg
fix choice explanation styling
Merge pull request #2389 from Stanford-Online/giulio-share-results

Changed output of sharing widgets (fixes #2386 and fixes #2387)
Merge pull request #2391 from Stanford-Online/jbau-random-psets

Fixes xml metadata confirmation message.
Making mnesia table destruction safer