Methods for building object inheritance and mixing object definitions to promote consistent, reusable patterns