Finish Text Type Migration

We now sanity-check attempts to change Types, and forbid it outright
except for Text-to-Text changes.