working on dragging, snapping, movement constraints
up and down movement, dragging is pretty lame