Component Spec/Registry/Factory Pattern