Factory now use initilizeShared internally to DRY
config services moved to initilizeShared