Fixed build() arguments
Fixed tests to call build() properly.
Fix typo to clarify recursion leads to more GC.
Merge pull request #8 from kgautreaux/patch-1

Fix typo to clarify recursion leads to more GC.
Merge pull request #7 from Nopik/fix_build_args

Fix build args
entities should be expanded in attributes too
cleanup
placeholder refactoring WIP
fix replace
remove Placeholder.create and just make it the signature of new Placeholder
make test pass in FF
simplify entity expansion
fix global lookup undefined
Merge pull request #11 from g13013/master

fix global var  lookup error when undefined
Hydration refactor

Unravel mustache loop and hydrate function.

Also solidifying / making sense of helpers.

Example templates to give you an idea:

    {{foo}}<span></span>
    ...
    function template(context, options) {
      if (cachedFragment === null) {
        cachedFragment = build(dom);
      }
      var fragment = cachedFragment.cloneNode(true);
      var helpers = options && options.helpers || {};
      var placeholder0 = new Placeholder(fragment,0,1);
      helpers.CONTENT(placeholder0, "foo", context, [], {escaped:true}, helpers);
      return fragment;
    }

    <span>{{foo}}</span>{{foo}}
    ...
    function template(context, options) {
      if (cachedFragment === null) {
        cachedFragment = build(dom);
      }
      var fragment = cachedFragment.cloneNode(true);
      var helpers = options && options.helpers || {};
      var placeholder0 = new Placeholder(fragment.childNodes[0],-1,-1), placeholder1 = new Placeholder(fragment,0,1);
      helpers.CONTENT(placeholder0, "foo", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder1, "foo", context, [], {escaped:true}, helpers);
      return fragment;
    }

    {{foo}}<span>{{bar}}<a>{{baz}}<em>{{boo}}{{brew}}</em>{{bat}}</a></span>
    <span><span>{{flute}}</span></span>{{argh}}
    ...
    function template(context, options) {
      if (cachedFragment === null) {
        cachedFragment = build(dom);
      }
      var fragment = cachedFragment.cloneNode(true);
      var helpers = options && options.helpers || {};
      var placeholder0 = new Placeholder(fragment,0,1), parent0 = fragment.childNodes[1], placeholder1 = new Placeholder(parent0,-1,0), parent1 = parent0.childNodes[0], placeholder2 = new Placeholder(parent1,-1,0), parent2 = parent1.childNodes[0], placeholder3 = new Placeholder(parent2,-1,0), placeholder4 = new Placeholder(parent2,0,-1), placeholder5 = new Placeholder(parent1,0,-1), placeholder6 = new Placeholder(fragment.childNodes[2].childNodes[0],-1,-1), placeholder7 = new Placeholder(fragment,2,3);
      helpers.CONTENT(placeholder0, "foo", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder1, "bar", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder2, "baz", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder3, "boo", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder4, "brew", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder5, "bat", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder6, "flute", context, [], {escaped:true}, helpers);
      helpers.CONTENT(placeholder7, "argh", context, [], {escaped:true}, helpers);
      return fragment;
    }
Add passing test for compiling SVG elements
Merge pull request #12 from mmun/patch-1

Add passing test for compiling SVG elements
refactor Placeholder tests to support same combos on PlaceholderList
refactor placeholder parent
fix tests that use placeholder.parent