Cherry pick: Fix bug where USB wouldn't disconnect on soft reset (after flash).
Cherry pick: Fix for switch functions not getting reset properly after homing.
Misc. cycle fixes
Minor refactor of Stepper.cpp (fixes direction pin not initializing)