Rethink inheritance