WIP: New Publishing controls on Unit page.

STUD-1707

Known issues:

1. "has_changes" is a bit buggy at the moment. The best way to see "has_changes" change state is to add or delete components on the page. Editing a property of a component on the page that is already published does not change "has_changes"-- Ben has a PR with this fix.
2. The disabled colors for "View Published Version" and "Preview Changes" are not consistent.
3. "Preview" functionality does not work on sandbox-- Feanil to work on next week
4. "Discard changes" is not complete-- will be finished as a separate story.

Notes/Questions:

Sandbox with test course--  http://studio.cahrens.m.sandbox.edx.org/course/slashes:foo+foo+foo
Naming is hard... when I read these next set of tests, I thought they were just testing the rendering. In fact, they are all testing both the initial rendering, plus also how the tests react to changes fetched from the server. I think they would be clearer if broken out into separate tests, e.g. 'updates correctly when changing from public to private' etc.