Make bind-fields return a form, not a function.

Previously, `bind-fields` would transform `form` as a setup step
(i.e. it would transform it and then return a function that would give
the 'pre-transformed' `form`).

This had the unfortunate consequence that forms would not be properly
updated when the `doc` atom changed.

This commit fixes this issue by making `bind-fields` return the form
itself. This way, reagent will make sure that the forms are updated
properly.
Use clojure.core/get for selections in group-item.

Previously, `selections` was accessed through `(key @selections)`. This
presumes that `key` is a keyword.

This commit gets around this by using `(get @selections key)`.
Merge pull request #28 from aeriksson/handle-external-updates

Properly handle external updates to atoms.
Merge pull request #27 from aeriksson/allow-non-keyword-keys-in-selects

Allow non-keyword keys in selects.
rolled back fix for external atom updates