Allow `manager_from` to return instance or class

This allows the `manager_from` method to return a manager class.  This is useful for creating manager base classes that can be further extended.

For example:

    AbstractManagerClass = manager_from(SomeMixin, AnotherMixin, as_class=True)

    class NewManager(AbstractManagerClass):
        def confirmed(self):
            return self.filter(status='confirmed')