added 'set-data' transformation function

this allows attaching data to nodes during transformations, which can then be used later.  so for example...

```clojure
[:li] (clone-for [item items]
        [:.select] (set-data :item item)
        [:.title] (content (:title item))
```

(in my case i then attach click handlers separately, which will use the item data)

not sure if this is something you want to include in the library, if there's a better way of handling this that i'm missing then i'd love to just know that instead :)