Better cloneNode(), doesn't break when escaping quotation marks inside attributes
Changes to fit with new Loop.hx (now parses in loop itself to items)
Support loops from inside widgets. Will create partials as necessary.

Currently partially tested, passing on JS and Neko.  1 Failure on CPP but mostly working.

More tests required... and hopefully figure out a way to not require type="String" attribute
Get macro to infer the type of the loop, so you don't have to explicitly define it

Thanks Juraj for the tip: https://groups.google.com/d/msg/haxelang/nZJ1U2hrsl0/mUdBymOnbioJ

Part of this change is also getting loops to work with iterables OR iterators,
so that the for="x in 0...10" will work as expected.

Added a few more unit tests while we're at it...