simpler user experience for registration; now no recurring refresh, window to close--just a callback url.
central-server-side of redirect.  This also forces the sync to run, with no confusion to see that the device has not yet sent sync data to the central server.
Merge branch 'redirect_to_force_sync' of github.com:bcipolli/ka-lite into redirect_to_force_sync

Conflicts:
	kalite/securesync/views.py
Merge branch 'develop' of github.com:learningequality/ka-lite into redirect_to_force_sync
__unicode__ function must use u'' format strings (see registration app for an example like these changes.
adding tests
making __unicode__ work on unsaved objects; gracefully failing sign() on unsaved objects
unicode tests for main objects
notify user of any errors in saving.
refactoring code to be a bit DRYer, fixing bug in topictree rendering.
refactoring JS code to use better names, common function to show API messages.  Removed outdated logic for view-based notifications, which broke once caching was implemented.
made messages more shared and compact, and made sure related error messages displayed to the same client-side message ID--to avoid multiple messages on the same page, with similar messages.
fix type-o in exercises; make show_api_messages more robust (so that when it blows up, it does so in a more reasonable way.
remove pdb, and debug should be DEBUG
Merge branch 'develop' of github.com:learningequality/ka-lite into __unicode__support

Conflicts:
	kalite/contact/tests/__init__.py
making change to solve server error, adding regression test case.
made get_uuid assert good values, rather than full_clean; modularized test code
added get_or_initialize class function, cleaned up js formatting, added test for mastery.
Merge branch 'develop' of github.com:learningequality/ka-lite into notify_user

Conflicts:
	kalite/main/tests/browser_tests.py
Merge branch 'develop' of github.com:learningequality/ka-lite into redirect_to_force_sync