Added the beginnings of a Vector2 class
Tidying up some code and making some functions take references instead of values