SPRNET-1543 Reviewed GetObjectDefinionNames inconsistencies

See Github issue #38

The problem was that some consumer of GetObjectDefinitionNames() get all ObjectDefinitionNames, including parent factories, but used GetObjectDefinitionstring name) to get only object definitions from current factories, not parents. NPE was the result.

Made it consistent and added a special method GetObjectDefinitionNames(bool includeAncestors) to let a consumer decide what he wants.

Some consumer got a new property so the user can decide to include parent factories if wanted, default is False.