Recursive templates in fragment.js

Hello, I've made a few small changes to fragment.js that allows it to have recursive templates and cascading interpolation contexts.

I added a small tweak to handle engines like Chrome that sometimes call xhr.onreadystatechange multiple times when readyState is 4. I also added a simple trim() around the one check for an empty innerHTML (necessary if body is the template context).

By all means, please grab these changes if they seem useful to you, thanks.