Implemented adding/removing/renaming/editing virtual tile shapes.
Report error when writing virtual-tileset-related files.
Write TexturePacker.txt to the textures directory.
TileShapeEditor: Added separate x/y/z grid spacing, separate xyz/uv grid settings.
TileShapeEditor: Undo/Redo support added.
No editing shapes from VirtualTilesetDialog, use TileShapeGroupDialog only.

Also pass VirtualTilesetDialog's current texture to TileShapeGroupDialog,
if one is selected.

Also save TileShapes.txt/virtualtilesets.vts if edits are made in TileShapeGroupDialog.

Also allow groups to be reordered in TileShapeGroupDialog.