Finished the GUI to allow editing without XML

Work still to be done:
Integration tests with AI
Drag and Drop/Reordering
AI restricted use
This string needs a `u` in front of it so it will handle interpolated values with non-ASCII chars.  You should also use descriptive names in the `{}` to help out translators.