refactoring.
movement does all the movement stuff.  Position and facing are where
they are and their rotation forward.
and facing should really use glRotatef instead of glTranslatef.