Added rest of movement logic and hardened player input