Separate out movement, targeting, and keyboard input
Ditto
Add dropping linkable objects