Read/Write inheritance split up into separate base classes