How would you organize custom components for different UIs but share many of the same features? For example you may have a page that has a few playlists of thumbnails. Whenever someone focuses on a new thumbnail, the metadata (title, description, image, etc) of the hero section changes. There are three template pages that look similar but slightly different. The pages do many of the same of things but some things are only done by 2 of the 3 or only 1 or the 3.
I am thinking I should extend a custom component, but what is the best way to extend the custom component which in turn may contain many other custom components.
Is there a way to refresh the <children> node of the component's XML so it rearranges the various children nodes with the same IDs and new children nodes?