Added the ability to injecy an ObjectName factory to allow clients to
decide how to register mbeans exposing metrics.
maintained existing behaviour via DefaultObjectNameFactory