Drag and drop on the course outline page

STUD-1939

@talbs here is the new branch
Actually, I like to see `_.each` inside this method. If you need specific context for the element, I'd suggest rewrite it so:
```javascript
/**
 * ...
 * @param {String, jQuery element} [context] Adds an alternate context. 
 */
makeDraggable: function (type, handleClass, droppableClass, parentLocationSelector, context) {
    // Binds a number of methods on the contentDragger object, to be run in 
    // the context of that object whenever they are invoked.
    _.bindAll(
        contentDragger,  contentDragger.onDragStart, 
        contentDragger.onDragMove, contentDragger.onDragEnd
    )
    _.each($(type, context), function(element) {
        var draggable;
        if (element.data('droppable-class') !== droppableClass) {
            element.data({
                'droppable-class': droppableClass,
                'parent-location-selector': parentLocationSelector,
                'child-selector': type
            });
            
            draggable = new Draggabilly(element, {
                handle: handleClass,
                containment: '.wrapper-dnd'
            });;
            draggable.on('dragStart', contentDragger.onDragStart);
            draggable.on('dragMove', contentDragger.onDragMove);
            draggable.on('dragEnd', contentDragger.onDragEnd);
        }
    });
} 
```