Merge pull request #26 from jdjkelly/master

Updated ARCHITECTURE.md to reflect changes to HTMLBars AST example, and ...
Sync simple-html-tokenizer

Sync simple-html-tokenizer to commit tildeio/simple-html-tokenizer@fa0717334a389e43342ee40ecd25d560003f1962.
Add support for web components

This commit introduces a new hydration hook that allows HTMLBars to integrate
with web components. The hooks has the signature

   WEB_COMPONENT(placeholder, tagName, context, options, helpers)

and is generated along with a placeholder whenever the compiler encounters an
HTML element with a hyphenated tag.

Compiler changes:

- a new ComponentNode which is a mix of ElementNode and BlockNode. It has the
  signature `ComponentNode(tag, attributes, program)`.

- a new hydration opcode `component` similar to the `helper` opcode.
Merge pull request #23 from mmun/hyphenated-tags

Add support for web components
Fix text-only attributes in components and empty components
Merge pull request #27 from mmun/fix-components

Fix text-only attributes in components and empty components
Broccolify project
Merge pull request #29 from mmun/broccoli2

Broccolify project
Use bower for vendored assets
Use npm scripts instead of grunt
Added .bowerrc, removed unused files
Added 'Building HTMLBars' and 'How to Run Tests' sections to README
Split htmlbars into htmlbars-compiler and htmlbars-runtime
Merge pull request #30 from mmun/split-packages

Use bower, drop grunt, split packages
Test each package separately in phantom
Merge pull request #31 from mmun/fix-tests

Test each package separately in phantom
Move placeholder to its own package
rename Placeholder to Morph
Inject test dependencies recursively
Merge pull request #32 from mmun/recursive-deps

Inject test dependencies recursively