Small lint tweaks.
Beginnings of dynamic feed rate based on max velocity of X axis.  Also
enabled jog controls by holding down x,y,z now that feedhold and queue
clear appears to work.
Download start/stop button changes to stop when download is complete.
Reconfigured jog rate to be per-axis and removed from status layout.
Replace download dialog with an interactive pane on the file tab.
Updates to create a debugging log file with all messages sent/received
from HW.
Fix bug with config updates not working when more than one was selected.
Fixes to g28.2 to only send homing instructions for linear enabled axis
(am=1).  Also fixed jog rate controls.  When set to "fast", the step job
and continuous modes will run at whatever the vm rate is for that axis
using g0.  When set to slow, it will use g1 moves, and will use a feed
rate that is vm/2 or fm, whichever is less.
Fixed tab change behavior and save of filename value.
Added a pause/resume button for feedhold and cycle start commands.
Refactored existing hold and reset instructions, and refined the serial
semaphore to correct for a bug on queue flush (adding too many tokens
back to the sem).
Removed the toast that presented JSON parse errors and instead logged to
log file.  Still need to add enable/disable of log info.
Added io debug logging preference, disabled by default.