Rework course overview drag and drop.

Failed drags bring the element back to where it started; elements are
locked to the y-axis, states are represented as CSS classes for
styling, elements can be dragged across section/subsection borders,
and dragging to the top/bottom of a section Just Works™.

Needs some styling love to give visual representation of where the
dragged element will drop, though.

TODO: It'd be good to have auto expand/collapse for subsections.
Add auto-expand to overview lists.
Make all of section/subsection/unit draggable.
CSS classes for drop targets.
Address PR comments.

Remove unused variables; some changes to match existing BDD spec for
drag/drop (expand-on-hover timeout and dropping with mouse outside of
element); bugfix for section expand; some code cleanup; update and
re-enable acceptance test.
Fix not being able to expand an empty subsection.
Jasmine tests for drag/drop.
Adds in minimally revised drag and drop styling.

Add CSS classes and fix drop destination bug.
Cleanup to drag and drop implementation.

Also includes RequireJS changes.

Fixes bugs:
STUD-755, STUD-152, STUD-700, STUD-699
Comment out tests that fail in Jenkins.
Use RequireJS for test dependencies, and use domReady.