Use window.requestAnimationFrame for touch events
Refactor draggable and droppable to separate files