remove dispatch on Keywords (made useless by check on js/String) in element protocol: keywords are strings for cljs at the moment
fix use of setAttribute/getAttribute for setting className on Element instances (this is broken on IE, and possibly slower too)
Merge branch 'set-attr-vs-classname' of https://github.com/mpenet/dommy
updated readme for protocol extensibility
minor refactor of attributes to support compile macros
first draft of compile template macros
updated readme for template macros
omit attributes that are logically false

HTML attributes that have a value are considered logically true, even if the
value is the empty string.  The prior code translates an element like
[:option {:selected false} ...] to <option selected="false">, which the
browser interprets as true.

Omitting the attribute altogether if the value is logically false
(i.e. false or nil) fixes this.
move check for attr value to all cases
fix false attribute value for compile macro
added deftemplate and ^:text type-hinting