Fix publish to actually honor non-default encodings.

This also fixes fressian decode to actually work.