added mapping to pairs, boundary snapping, etc to GameObject
new class Controller to replace input.lua