Editable Shapes now uses composition instead of inheritance