Replaced base classes with interface compatible implementations.