initial redesign of map completed

Hi Ziggy (@aepyornis),

Here are the revisions. Gabriel and I made a valiant attempt to keep the code organized, commented and readable. I'm also available to meet sometime one on one to go over the changes and discuss future steps.

regards,

-Chris