Controller now generates or loads map data, calls functions in Map to create the actual components.  EnvironmentBehaviour no longer needs to be initialised (EdgeArray now created before Map then passed in).