* first draft of switch from inheritance to composition