The core fix was to remove the redundant includes of grbl.h
from the individual spindle.cpp files. Since those files
are inlined into Grbl_Esp32.ino via nested includes, the
top level include of grbl.h in the .ino covers them.
I also did some cleanups:
– renaming tools/ to Spindles/ . While “tools” is a good
name in the CNC domain, meaning “toolheads”, in the
software domain it typically means “ancillary programs
used for building the software”
– Added a “#pragma once” to grbl.h just in case; it had
no header guard.
– Removed a duplicate #include grbl.h from stepper.cpp
– Deleted some trailing whitespace
– Fixed missing newline at the end of some files