Everything done except maze radomising and tests.