Bump version to 0.6.0.
Abstraction child node lookup into `childAt`

Currently, opcodes that look up child nodes are hard-coded to generate
a chain of `childNodes[idx]` lookups.

This change abstracts that lookup by adding a `childAt` method to the
DOM helper, which takes an element and an array of indices to look up.

For example, the old code:

```js
fragment.childNodes[0].childNodes[1].childNodes[0];
```

is replaced by:

```js
dom.childAt(fragment, [0, 1, 0]);
```

This change allows us to abstract child node lookup so that the elements
returned from e.g. `dom.cloneNode` or `dom.createDocumentFragment` do
not have to implement a subset of the DOM API, and helps keep all of the
abstraction in the single DOM helper object.
Merge pull request #226 from tildeio/child-at-refactor

Abstract child node lookup into `childAt`
Throw useful error message for unmatched or void element end tag.
Merge pull request #227 from oneeman/error-for-unmatched-end-tag

Throw useful error message for unmatched end tag
Fix exiting namespace when it's the last child (#223), clean up surrounding code
Merge pull request #228 from oneeman/fix-exiting-namespace

Fix exiting namespace when it's the last child (#223)
Simplify namespace handling

-- Omit unnecessary namespace changes in fragment generation
-- Consolidate namespace handling into one place
-- Correct assertion messages in some SVG-related tests
Merge pull request #231 from oneeman/simplify-namespace-check

Simplify namespace handling
setContent instead of update
Merge pull request #232 from mmun/setContent

Rename Morph's update to setContent