Simplified the Workflow class

Moved a couple responsibilities out of the class so that it will be
easier to refactor:

  - translating() was simply not used
  - showOverlay was only being set from WorkflowController.  At that
    point it seems easier to set it directly to the scope.
New workflow handling in the editor (#1523)

Implemented most things in that ticket, namely:
- Use the same workflow for tasks and non-tasks modes
- Use checkboxes to complete workflow stages
- Reworded "Save" -> "Save Draft" and "Complete" -> "Publish"

Still need to implement tasks mode, but the nice thing about this new
layout is that we use the same workflow area regardless of tasks or
collaboration mode.  We just need to change the buttons at the bottom.
Added some support for task workflow

Like I said in the comment, this is just a temporary step until we
implement #1667.
Implemented edit title and description in the workflow

Changed it from a button to a link.  I think that makes more sense.
One more workflow rework

This one makes it feel like to the old system with a button to go to
the next step.
Give the page element absolute positioning.

It contains the other elements, so it should logically take up the
entire page.  This also fixes a layout bug with the video section,
although I don't really understand why.
Merge branch 'dev' into editor-workflow
Show help/instruction overlays correctly (#1675)
Workflow step improvements (#1675)

Fixed button text for the syncing step.  Now says "Start Review".

Fixed borders for the steps.  We now draw a border between the steps
and the border extends the entire width.
Workflow button fixes (#1675)

Changed text back to "Accept" from "Approve".

Fixed color/icon for the send back button.

Changed button CSS so that we don't have a border, we just add an
extra px of padding.  This makes it so that we don't have to worry
about the border color when changing the background color.
Rework workflow content (#1675)

Add a linebreak before the edit title and description link

Added some extra text to explain steps.

Styled text inside steps better.

Make the content inside of the steps line up with the left side of the
heading, rather then the left side of the step number.

Display an error warning if you're on the review step, but don't have
completed subtitles.

Removed code to handle the tasks buttons.  We're going to do a more
dramatic change for approve/review tasks.
Merge branch 'dev' into editor-workflow
Merge branch 'editor-workflow' into editor-review-with-actions
Reworked code to get tasks for the editor

Moved it to TeamVideo.  The nice thing about this is that we can cache
the result.  The code that I'm planning to re-implement the review
mode, will want to do the same lookup, and I didn't want to duplicate
the DB query.
Re-implemented review/approve mode in the editor

In an attempt to try to clean up the handling of different modes, I
used to behaviors module to implement this.  It's a bit of overkill
right now, but I think it will help keep things sane when we add the
collab model modes to the list.

Still to be done is implementing the JS/HTML/CSS for the review mode.

Created documentation for the editor work modes and the behaviors
module.  Switched to using napoleon to handle this.  The docstrings
are so much nicer than the default sphinx docstrings.

Added a couple of convenience methods to Team and Task
Added back review mode in the editor

Changed the workflow controller code.  Now we have three controllers:

- WorkflowController: handles basic tasks like poping up the edit
  title/description dialog, then delegates the rest of the work to one
  of other controllers.
- NormalWorkflowController handles normal mode -- the same as the old
  WorkflowProgressionController
- ReviewWorkflowController handles review mode

Added some HTML for review mode.  Split up workflow.html into 2 files
-- one for each mode.

Made the video/help section not use WorkflowProgressionController.

- For help we didn't need it at all, because we setup $scope.workflow
  in the AppController
- For video we just needed to move the code that handles the overlay.
  Also renamed same variables that had to do the the subtitle overlay
  to avoid a naming conflict.  Lastly, added some code to actually use
  showSubtitle (previously showOverlay) to hide the subtitles when
  there isn't an active one.
Started implementing the subtitle action system (#1667)

Wrote the basic code, tests, and documentation.
Added API for subtitle actions

Started a new app for our API.  There are a bunch of issues with the
old one:
  - Uses a really old version of tastypie
  - Code is pretty confusing
  - Code is in our private repository, but only some of it needs to be

The new code feels way nicer to me, but we need to use some footwork
to to avoid package name conflicts.

I named the package "api", since "apiv2" is taken by the other app.
"api" used to be used for version 1 of the API, but we have not
supported that for a while now.

Made the new app use django-rest-framework.  It seems like a fine
package, but the main reason for the switch from tastypie is to avoid
versioning issues, since the other package needs to use the old
version of tastypie.

Lastly, in the urlconf we add the urls for the new app above the urls
for the old app.  The URLs overlap and this ensures that the URLs for
the new app will take precedence.
Handle performing actions while saving subtitles

Set the complete flag to True/False depending on the value of
Action.complete.

Perform the action after saving a new version.
Implemented actions in the editor

Send actions to the editor via editor_data.

Refactered the session code to work with actions instead of tasks,
etc.  Added a bunch of tests for session code and also
SubtitleStorage.  Moved EditorData component out of
amara.SubtitleEditor.subtitles.services.  This allows us to mock it
out while testing SubtitleStorage

Implemented actions for tasks teams.

Added an in_progress_text attribute to Actions.  This is what we show
in the freeze box while waiting for the API request.

Pulled in a new version of the API to allow for sending actions when
posting subtitles.

Added visual_class for the Publish action