This changes the element pool to only remove elements' children right
before we use an element again in order to preserve the structure of
double-freed elements. This will aid in debugging double-free
occurrences. It's also less work in cases where nodes aren't reused.