Replaced calls to getSimpleName() with a getName() hook
Fix infinite recursion on cyclic import structures.

If owl:imports iri declarations do not match the imported ontology IRI
and there is a cycle in the imports closure, the parsing goes into an
infinite recursion. Cycle broken by detecting the cycles on the
owl:imports IRIs rather than waiting for the ontologies to appear in 
the manager index.
removed useless checks in equals()
Refactored property hierarchy to remove generics. Introduced Searcher.

A large amount of generics in OWLPropertyExpression was there only
to support convenience methods to search through ontologies.
Simplified this by removing the convenience methods and introduced a
class to write customizable searches.

Searcher is still embryonal. It currently relies on convenience 
methods in OWLOntology. It should evolve to use ontology internals
to simplify and speed up searches and filters.
Fix test code