Construct instance. The config parameter, if given, is used to configure
the transactional replication of instances or subclass instances. If the
config parameter is null, no replication messaging will occur and only
host instance of object will be created.
Initialize this shared object. Subclasses may override as appropriate to
define custom initialization behavior. If initialization should fail,
then a SharedObjectInitException should be thrown by implementing code.
Also, subclasses overriding this method should call super.initialize()
before running their own code.