Improve the object inheritance pattern