Use replaceNode for IE8 setInnerHTML instead

> // TODO: What to do on a detached node?

This! :)

Verified in a native IE8 instance.

Switched to `swapNode` instead, it is even slightly faster than `replaceNode` (and shorter).