I did confirm that there was an issue with the PK not being dropped if you change the type from one to another. This has already been add to the "ToDo" list. As for some of your other problems, I think that you are probably just not doing something quite right. Just FYI, we use this on a daily basis and there are a few things that you have to know about, such as adding new fields to a table that already has existing data. You will need to either allow NULL or provide a default value, such as (0) or an integer field or ("") for a character field. In a normal day, I change and post anywhere from 5 to 20 changes to a server using the DDT. So it is well broken in. One other thing, when you installed StrataFrame, all of our structures, and sample data, are deployed using the DDT as well.
So as for the reliability, I promise you it is there just like the framework.
On a few other occasions I had to undo my changes, or in one instance when I tried to remove the PK field (experiment) without first deleting the index referencing it I had to pretty much rebuilt the table.
To remove a field as a PK within the editor, simply uncheck the "Primary Key" check box, click Save and the index will be automatically removed.