Too many classes in the same file, break up. simplify things a little in EncounterArea (remove passing thru nulls, should throw excpetion immediately if misconfigured).