Lots of questions, but just thinking about the tool-table thing - one reason is that you can generate gcode with a toolpath where the the CAM software knows tool diameter and offsets the toolpath by tool radius, or the toolpath follows the centre-line of the cut and the motion control software uses local tool data to generate the offset on the fly, so to speak. One advantage of the second approach is that you can change tool size without needing to regenerate the gcode, or more likely you can tweak the tool table numbers to allow fine adjustment to cope with tool sharpening or tiny variations in tool size if you change cutters. For home use, I can rebuild the gcode very quickly if I need to make tool size allowance, but commercially where the guy running the machine can't or shouldn't change gcode but still needs to recalibrate for tool changing, the local tool table makes sense.