Hi,
I custom built similar functionality where design team can create a layout by adding layout component which accepts "Title" , Approved or not (Switch) and have a parsys where we can add the components and create a structure with all the default options modified.
Created another reference component which has the dropdown which displays dynamically all the approved layouts components (Title as Text and Path of the layout component as Value) on selecting one of the option from dropdown and saving the dialog will copy the structure from the path and place it where reference component is added and ready for authors to add the content.
fyi.. @kautuk_sahni