part1....seperated most of the map logic out to an IMap object...and it still compiles in the localgamerunner
including files missed from last commit