Removing header ordering

Now that we have decided to remove the reference set, the hacks we added to address header field ordering are no longer entirely necessary.

This change does the following:
* remove the requirement to concatenate with '\0'
* require pseudo-header fields to all appear before regular header fields
* change 'header set' to 'header list'