Moved some of the drawing code to Map.

Makes builder/draw more generic and cleans up some giant argument lists