Add support for more preface elements

Closes #267. Includes #330 and #315 for simplicity.

Doesn't include migration yet, as I figure there will be discussion, and #330 may go in first, in which case I'll have to recreate this PR's migration anyhow.