Campbell: options modeler used to control variants, present configurations, group parts, reuse