Smarter mechanism to automatically determine the type of object being built by the builder interface. Allows for multiple interfaces on the builder.