Composer rewrite (layouts)

This QEP covers a rebuild of the current composer functionality, to overcome design limitations with the current composer code