Issue #3491013 by jessebaker, longwave, bnjmnm, wim leers: Rework layout API to separate components and slots