Refactor and optimise coding style for readability
Put movement logic in Camera
Fix cursor wrapping for smoother camera rotation