`paginatorModel` can be an instance of a Model, or a configuration for a new model. 

If it is a configuration, `pagiantorModelType` is used to specify the type of model to instantiate, and the `paginatorModel` is used to configure the new model. (needs updated to reflect such)

Y.Lang.isObject is used to check to make sure it's an object and not a function. 
Could `(typeof ModelClass === 'object' && typeof ModelClass !== 'function')` avoid `Y.Lang.isObject()` ?