Creating Multiple Interrupts

What has reading the serial port got to do with reading limit switches ?

I don't know. But let's say I send some Gcode to the Stepper motor and tell it to turn 1000 Steps.
And if I am running the serial monitor, it spits out a copy of the Gcode command after it's done.
Then continues updating the serial monitor.
It seems it is waiting for the stepper motor to go through all of its steps before it executes any other code.
I'm new at this so It's a little confusing to me.

Whats the rate of change you are looking at ? i.e. what timing could you accommodate between hitting switch and motor turning off?

Not sure. The Arduino is running at 57600.
Not sure I follow you about the time tick interrupt but I'm open to options.
The goal here is to run a function once those momentary switches are clicked so my machine doesn't break if it goes beyond the limits.