Fix EZP-23562: Elasticsearch: make Mapper dispatchable

This PR resolves issue https://jira.ez.no/browse/EZP-23562

This breaks Mapper implementation into a abstract `Mapper` and `Standard` implementation, in order to make custom implementations dispatchable.

`mapContentLocation()` is renamed to `mapLocation()` as more appropriate.