extracted IdentifierMapResolver from Scope

- Scope no longer is a BaseRelaxedResolver but has one (IdentifierMapResolver)
- for more easy usage Scope still implements RelaxedResolver by delegating to its resolver
- this way a Depending has no way to access and modify the scope by casting the resolver it receives