I find this method a bit confusing. It's unclear why a `BrooklynEntityClassResolver` corresponds to returning an entity spec. I think it at at a minimum needs a pointer (in the javadoc) to `BrooklynDslCommon.entitySpec` so say that `BrooklynEntityClassResolver` is taken to mean a buildable entitySpec.

Currently `BrooklynEntityClassResolver` has two responsibilities: first for resolving the entity class; and second to store the details of an `EntitySpec` (i.e. the specConfiguration).

I wonder whether separating that into two classes would be clearer, so the second responsibility would be captured in an `EntitySpecDetails` (horrible name!). That would just have a `Map<?,?> getSpecConfiguration()` and `String getEntityType()`. This method would then create the `BrooklynEntityClassResolver` to resolve the `Class` part.

Thoughts?