Refactor|Material: Cleanup refactorings for Material

The lifetimes of Material::Variant instances are now managed by
via the interface of the 'superior' Material.