Interrupting with push buttons has failed.

That is not your complete code. Where is the variable 'steppers' defined?

Accesses of the 'mode' variable may not be atomic. They need to be protected from interrupts in non-ISR code (i.e. loop()).