Added controller input

Refactored Input also tweaked player movement to something more
realistic.