Allows the user to send text to the serial console in order to
communicate with a host - sending debuging information or action
commands, for example. Text must begin with '//' and this is added if
it is not already present at the beginning of the string.
Can't compile with PINS_DEBUGING enabled on Atmega1284p because it tries
to enumerate pins 46 and 47 (which don't exist) because `#ifdef
AVR_AT90USB1286_FAMILY ` doesn't work as expected.
The fix in #6251 for bilinear Z offset was flawed and broke the Z parameter of G29 for bilinear levelling. This is reverted and a different fix is used for the double-addition of the Z-probe offset to the bilinear correction grid.
Since run_probe was altered to return the probe Z position rather than the nozzle Z position bilinear levelling has been broken because the Z-offset has been applied twice - once in the run_probe function, and then again in the G29 code for bilinear levelling.
With the the current definition of echo_command I cannot compile RCBugFix (Arduino IDE 1.8.1) with the error "invalid conversion from 'const char*' to 'char*'". This change resolves that.