Initial support for arbitrary axis count.
Use arrays instead of _x _y .. variables.
Allow direction pins to be on separate port from step pins.
Allow single-axis homing.