Rewrote assembler to use a TokenStream, allowing empty aggregates.