Correct Circle-handling

Single-command circles were getting rendered as 0-degree arcs. Also
linked controller min-arc/arc-length settings to visualization
calculations.
Manual merge of estimation changes

Estimation using GRBL simulator (tweaked build with buffering disabled).
A lot of little things changed so that the file is preprocessed only
once. Alignment of command state updates to the UI are also fixed. The
estimation changes will only work for x86, so will need to be adjusted
before suitable for merge to master.
Put console message updates inside EventQueue.invokeLater, so that UI updates are performed by the UI thread.
Remove stray references.
Another left-over reference
Changes to build under NB

These should only be the changes required to use StringUtil. There are
other changes in my local environment to include rxtx files in my
environment that are excluded from this commit.
Fix case where failed connection allows estimation to run on file load
Short out estimation

Just until support is added for cross-platform and multiple GRBL
versions.