clean up the movement code a bit
better camera scaling