RelationDefinition applyScope/applyMapping

Add the ability to set static/dynamic filtering (where, order, limit, skip, fields …) and property mapping/transfer (de-normalization) for hasMany/hasOne. This enables LoopBack beforeRemote handlers to dynamically change the relation scope. See the comment in the tests for the rationale. 

Based upon this, it should be easy to create a public method to set this scope on the instance-level (`setScope({ ... })`).