remote unused argument from deepCloneIgnoreTemplateContent
Merge pull request #148 from jmesserly/fix_extra_arg

remote unused argument from deepCloneIgnoreTemplateContent
add bower configs
s/Polymer/polymer wrt GitHub
Revert "s/Polymer/polymer wrt GitHub"

This reverts commit 2c2a888e8dacafafb07ac7a9c15fe3657a948c8f.
use staging document for binding elements

This is how bind is going to work in a world where custom elements created callback dont fire inside of <template>.

R=arv
BUG=

Review URL: https://codereview.appspot.com/19990044
fix staging document logic
Remove usage of token argument for observers

R=arv
BUG=

Review URL: https://codereview.appspot.com/31330043
bindingDelegate functions receiver is now bindingDelegate

Note, this also removes delegate as the second argument to createInstance. A delegate must always be set on the template to be used.

R=arv
BUG=

Review URL: https://codereview.appspot.com/34460043
Clean-up processBindings logic

R=arv
BUG=

Review URL: https://codereview.appspot.com/37740045
add ComoundBindings & Expressions to benchmark

R=arv
BUG=

Review URL: https://codereview.appspot.com/38820043
remove version info from master branch
TemplateBinding changes to support Observable interface change

Template now ensures that Node.bind() receives an observable. If a binding delegate has returned an observable, it uses that. Otherwise it creates a PathObserver.

R=arv@chromium.org, arv
BUG=

Review URL: https://codereview.appspot.com/40550043
Observable.reset -> Observable.discardChanges
Fix logic in processSinglePathBinding

If the delegate returns an observer, it still must use the ObserverTransform if the binding is compound (has non-empty string tokens outside the mustache)

R=arv
BUG=

Review URL: https://codereview.appspot.com/43060044
Implement one-time bindings.

This patch introduces the first cut at one-time bindings. The syntax uses double-brackets as insertion syntax ('[[ foo ]]').

Note that this patch also changes the follow pre-existing semantics:

1) Prior to this patch, it was tolerated for the delegateFn returned by prepareBinding to decline to return an observable. This is no longer the case. It is now required that if prepareBinding return a fn, that the fn return the correct value type for the given binding type (dynamic vs. one time).

2) This patch fixes two bugs in template repeat semantics:

a) It is only neccesary to observe the iteratedValue if the value can in as an Array from the repeat directive.

b) Previously mutating the observed array and them immediately replacing it with another array may have resulted in errors, as the code assumed that when the iteratedValue was changed, present state of iteratedValue properly reflected the existing instances. Now the code keeps an internal array which represents the fully-synchronized state of the instances and should never be confusable.

Note: I'm aware the code which sets up the TemplateIterator with repeat/bind/if values/observed values is a mess. I'm currently taking this as an indication of a problem with the design -- which I plan to fix as a follow-on.

The root problem is that templates are currently set in motion via two different public API channels: template.model and template.bind(). I think template needs to just come to terms with being different -- it should only be set in motion with template.model.

R=arv@chromium.org, arv
BUG=

Review URL: https://codereview.appspot.com/38540047
Fix codereview benchmark example
Refactor template bindings: Clone and bind instance nodes in single pass

R=arv
BUG=

Review URL: https://codereview.appspot.com/45840043
Produce sub-templates synchronously.

This patch make handling of bindings for template bind/if/repeat special, in that they are processed privately as a group (and are not available as public binding names).

Also, the processing order for binding recursive is now post-order, this means that all children elements will be bound and templates produced before a given node binds.

R=arv
BUG=

Review URL: https://codereview.appspot.com/45890043
minor benchmark changes