Terrain is now encapsulated in a class
Adds shops.
Abstracts 'finished doing something' logic