Organized into multiple files, map manager added.