Completely rebuilt the map system.

using ArrayLists rather than Arrays.