A factory type that can turn a Builder instance into a Built instance. Implementing this factory type can enable usage of custom classes in DSL builders.
Turns a Builder instance into a Built instance, first applying the given DSL block to the builder.