Wraps a class constructor so that repeated construction returns the same instance, deferring creation until the first new call. The wrapper preserves the original constructor signature and instance ...