re-refactored InputMovementComponent