BROKEN! More work on converting over to the abstracted format system. This is a checkpoint commit because of the massive changes.