Fixed precision bug, made it easier to compile

I added a 'precision' preference because the 'machine tolerance' was being used inappropriately to truncate digits ,causing some numbers not to be rounded in metric mode and causing GRBL issues from overflows. I also added build profiles to make it easier to compile and test.