Laser firing / stepper interrupt optimization, bug fixing and cleanups

This fixes the wonky and careless laser handling in the main stepper interrupt which was causing missteps, vibration, binding and other issues. It also gets rid of some code that's unnecessary for laser-based printers and fixes a few bugs that weren't causing direct issues.

It doesn't fix the generally incoherent laser pulse timings nor the 100% duty cycle pulses that occur every 1 second. Those are due to a bad implementation of the laser timing that isn't an easy fix. I plan on rewriting that using a hardware timer when i catch some time off (one of these weekends, maybe).

In the meantime, a quick-fix for the 100% 1-second pulses is to disable the LCD support (temperature management and LCD management interfere with the timings at the moment). The general laser timing jitter cannot be fixed similarly, but doesn't seem to impair the print quality at its current resolution (which is limited by the stepper drivers).