function mapChildren(children, func, context) {
  if (children == null) {
    return children;
  }

  var mapResult = {};
  var traverseContext = MapBookKeeping.getPooled(mapResult, func, context);
  traverseAllChildren(children, mapSingleChildIntoContext, traverseContext);
  MapBookKeeping.release(traverseContext);
  return mapResult;
}
The "image" of a component tree, is the platform specific (typically
serialized) data that represents a tree of lower level UI building blocks.
On the web, this "image" is HTML markup which describes a construction of
low level `div` and `span` nodes. Other platforms may have different
encoding of this "image". This must be injected.

@private