Isolate return values from helpers

Do the appropriate equality check for three cases:
(1) helpers in text nodes
(2) helpers in element attributes
(3) helpers in dynamic template inclusion

Also, assert that helpers passed to template inclusion indeed
return components or null.
Isolate attributes on `<p {{attrs}}>`

A helper can return an object with a set of element attributes via
`<p {{attrs}}>`. When it re-runs due to a dependency changing the
value for a given attribute might stay the same. Test that the
attribute is not set on the DOM element.