Declaratively toggle class names

<div data-dyna-context="" data-dyna-as="foo">
	<span data-dyna-class="{ hightlight:, colors: length > 1 }"></span>
	<div data-dyna-context="">
		<span data-dyna-class="{ hightlight: }"></span>

data-dyna-context takes an expression to provide a this evaluation context for nested data-dyna-class attributes. Contexts may be nested arbitrarily and may optionally be named.

data-dyna-class takes a collection of key-value pairs. Values are evaluated in the current context. Chen the value is true, the corresponding key is used as a class name for element. When the value is false, the class is removed. Keys are strings, including spaces to demarcate multiple classes ('one two').