simplified palette input handlers
'handleDrag' callback is now 'handleDragEnd' (socket event is still 'drag' though)
Merge branch 'master' into event-listener

Conflicts:
	editor/static/editor/js/unit_selection_palette.js
simplify mouse drag
Palettes can now use all of ui_renderer input events; obstacles render as you're drawing them; add dragMove handler; add documentation for state in ui_renderer
revert addConnection; remove esc to cancel obstacle behavior for now
Merge branch 'master' into show-obstacle-when-dragged

Conflicts:
	lib/static/lib/js/ui_renderer.js
placing obstacles now snaps to nearby nodes
shows the snapped to start node
added page changing through hashing and updated navbar links
fix double-creation bug in graph.fromJSON
starting new menu system
Add per palette "instructions"
Instructions are now their own html div
"Add testing for instructions"
Finished up the minimap
Merge branch 'master' into viewport_size_change
merged with master
menu bar links implemented
adding some styling so things dont overlap on play page