Move code out of src into root of repo to simplify
Drastically simplify Makefile by using implicit rules
Add bail() for simple message and exit
Introduce struct point and functions to manipulate
Fix const warning

Because strtok() does modify the string.
Introduce new gcode virtual machine

All statistics calculation will be done with this one simple engine.
Tests use repo binary location as first preference
Partially port stats module to use gvm virtual machine

The function get_extends() is ported however some test cases are still
failing.

The function get_progress_table() is not get ported.
Fix various build warnings
Virtual machine converted to a real stream processor

Rather than reading a line into a string and the processing that we process one
continual stream.
Add sloppy option in gvm gcode parsing

Is more permissive of bad gcode.
Allow un-located moves by default

The Z axis typically moves up before any axes have been homed.
Reorganise tests to run as part of make process
Combine gvm_get_position() and gvm_get_physical()

Easier to switch between modes.
Add physical mode to gvm_get_delta()
Enable sloppy by default
Fix bug in G92 handling
Tidy up austerus-verge port to gvm
Port get_progress_table() and austerus-send to use gvm
Reinstate old stats functions needed by austerus-shift