Added beginnings of boundary checking.
Added check to ensure the taxi cannot leave the CBD grid when moving backwards.
Refactored duplicated code for moving forwards and backwards.
Refactored tests for CBD grid checks and changed validation method to be a class method, as it does not rely on any of the state contained in a car instance.
Further refactoring for position validation logic.
Added some further tests for the position validation logic.
Refactored boundary checking to a separate class.
Merge branch 'CBD-boundary'
Merge branch 'master' into charles-and-ivy

Conflicts:
	lib/car.rb
	spec/car_spec.rb