use getLabel() instead of directly using discriminator
refactoring: querying strategy

Upon querying only traverse what is really necessary and use proxies or LazyEntitySet for those properties. Upon proxy expansion another cypher statement is fired. This is supposed to give improved performance.