cleaned up, fixed movement