The mapper engine computes 2D bounding rectangles for arbitrary objects.
Instance variables:
bounds <Rectangle> The currently recorded bounds for any object.
boundsMap <IdentityDictionary of: (Object -> Rectangle)> The bounds of all objects.
Load our components from the given render engine.
The idea is that all of the state is shared so that transformations
send during picking will be preserved in the given render engine.