Mixins

This adds a new feature to empower React mixins for Om applications. Checkout the README changes for additional description.

Overview:

*   Add `om-tools.mixin/defmixin` macro that looks and behaves similar to `defcomponent`/`defcomponentk`
*   Add mechanism to specify mixins from `defcomponent`/`defcomponentk` & generate custom constructor

Some things I would like some feedback on:

*   Any preference on `defmixin` being part of `om-tools.core` or stay in separate namespace?
*   Is the `(:mixins my-mixin)` syntax within component macro clear? Any suggested alternatives?
*   Is it clear how custom mixin methods are accessed from base component? (via (.) access) See example in README
You can avoid the separate `filter` and `remove` calls by using `group-by`; see http://clojuredocs.org/clojure_core/clojure.core/group-by#example_114