Enable dynamic modelTo for scopes

This is especially useful for relations/prototype scopes, as it allows
you to dynamically deduce the target model from the current receiver
(model instance). This is an advanced option that should otherwise have
no effect on the previous/default functionality. Basically, the
targetClass is taken out of the closure and handled by a method called
targetModel now.
Add hint, minor cleanup
Merge pull request #270 from fabien/feature/dynamic-scope-modelTo

Enable dynamic modelTo for scopes