2361: don't save subtitles if no changes have been made.

Added some code in the SaveSessionController to check if there have
been any changes made, if not we can skip the API call to save thing.

Changed the return value of SaveSessionController.saveSession().
Instead of returning a promise from the save API call, it returns a
promise that gets resolved with the version number of the subs.  If
we're skipping the call we obviously can't return the response data
and the only way we were using that data was for the new version
number.

Made SubtitleListController track the version number of the subtitles
that it's displaying.
2361: Disable the save button if no changes have been made

Changed the way we track changes, now instead of a method, we store a
variable in the SubtitleList scope.

Fixed a couple of bugs with the editor code:
  - stop editing when a text area loses focus (otherwise, you can
    finish editing when there's only 1 subtitle)
  - allow users to re-select the last selected subtitle item.
2361: Better UI messages

Don't say we are going to save/discard subtitles if no changes have
actually been made.
Merge tag 'pre-dmr' into production

Tag the pre-DMR changeset.
test update for change to dash css
selenium 2.31 is better with the chosen menus
Merge pull request #187 from pculture/i-2244

2244: Stop editing current sub when enter is pressed
Merge branch 'staging' into i-2361

Conflicts:
	media/src/js/subtitle-editor/controllers/subtitles.js
Merge pull request #189 from pculture/i-2361

I 2361
Merge pull request #190 from jdragojevic/wd-editor-1

some remaining test updates
2368: Added video titles to the new billing report
Merge branch 'production' into staging
Herp derp, missing comma
Merge branch 'production' into staging
Merge branch 'staging' into dev