fix(jqLite): clone wrapNode in jqlite/wrap

Change jqLite's implementation of wrap() to clone the wrapNode before
wrapping the target element in it.

Match jQuery's wrap() behavior and prevent accidentally attaching
target element to the DOM as a side effect.

Closes #3860
I feel it might be good to check if it behaves sane when wrapping multiple elements.