*A tool can now either match input perfectly, possibly or awful. So less options are displayed to the user (meaning the ChooseTool page can now be skipped most of the time).
*Improved layout.
*The Line Label at the bottom now show the name of the tool that's 'running'.
svn-id: r43031
*Avoided some nasty use of char ** by converting old parse functions to accept std::vector<std::string> instead. Avoided crash from ugly typecasts as well.
svn-id: r42853
*Added a common 'Tools' class to be used by both the CLI and the GUI, right now it's NOT in use by the GUI, so there is some code clutter.
*Rename gui/tools.h to gui/tools.cpp
*Tools now know their own type.
*Some other small changes.
svn-id: r42670