First off, thanks for the new ideas.  
Next:  are you suggesting the route_identifier_name be part of $config[zf-hal][metadata_map] 
So: rename [metadata_map]..[identifier_name] to entity_identifier_name and add route_identifier_name and change the getters and setters for each?  I'd like to get a green light on this because the renaming should encompass Apigility so [zf-rest]..[identifiier_name] will be renamed to route_identifier_name; so, it's a change that will affect everyone thanks to the new config.

I'm happy to do this if this approach gets approval.