Rename derivative to subject
Replace all instances of prototype with archetype
Fix importing of base interface