Added RenderNode.getChild() and preserveChildren option to RenderNode.set()

Since a RenderNode can have both an _object and one or more children in _child, the first part of this patch adds a new `RenderNode.getChild()` method that skips RenderNode._object and allows fetching the _child directly. This method follows the same rule of returning null if multiple children are attached.

Second part: Sometimes I want to swap out a Modifier in a RenderNode without blowing away the attached children. (Maybe this is not the correct approach and I should have added a Modifier.clone() method instead of swapping out Modifiers, not sure.) If this is a valid thing to do, `RenderNode.set(newModifier, true)` will allow replacing RenderNode._object without affecting RenderNode._child.