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
Also it took me like 3 minutes to understand this fn. A simple doc comment would probably help. I'm trying to figure out what `opt?` means; pretty sure it's not optional, but I can't assert that as fact.