Camera revamp - see description

Redone how input is handled by program, extremely similar - if not
identical - to Brian's.
Camera moving around is a bit smoother.
Mouse operating where camera is looking at isn't working, will fix.