Movement controls

I finished programming the movement controls. Reporting method will
vary based on application. Also, there should be a way to dynamically
adjust the size of the movement function based on the size of the map
created in previous function.