This BundleActivator provides three different uses of Hibernate in OSGi
 environments:
 
 1.) Enterprise OSGi JPA: The OSGi container/runtime is in charge of managing
     all of the client bundles' persistence units.  The container/runtime is
     also in charge of creating and managing the EntityManagerFactory through a
     registered PersistenceProvider (this).
 2.) Un-managed OSGI JPA: Same as #1, but the container does not manage
     the persistence units.  Client bundles identify a typical
     PersistenceProvider, registered by this activator.
 3.) Client bundles create and manage their own SessionFactory.  A
     SessionFactory is registered as an OSGi ServiceFactory -- each requesting
     bundle gets its own instance of a SessionFactory.  The use of services,
     rather than direct use of Configuration, is necessary to shield users
     from ClassLoader issues.  See 
OsgiSessionFactoryService for more
     information.