Just catching up on this discussion so I applogize if these ideas have already been hashed out.
I think that the original idea Jordan had was that the alignment is in the master header. Each component is always header and data together. The component header has the length. Given the alignment and the length the component search should be pretty smart.
Details about adding and removing components can be left to the discretion of the image creator/ rom writer. Putting the components in execution order would be optimal but decisions about alignment and space are left up to the user.
If something is wrong or missing in the idea please fix the wiki too. http://www.coreboot.org/CBFS#Searching_Alogrithm
Marc