Swap column widths when reordering columns in a datagrid.

The new datagrid modifications caused problems when reordering columns,
since the stored widths were left untouched. That would cause the
columns to swap sizes. To fix this, we just need to swap the stored
widths.