removes the code stolen from active_support in favour of active_support

The mixin class contained code "borrowed" from active_support, but
because the gem now uses active_support in other places, we can drop it
the Mixin class
makes use of active_support

adds require and removes the extend on mixin
Merge pull request #4 from sthulb/remove-cattr

removes the code stolen from active_support in favour of active_support