Being in the CNC business, I will say that nearly ALL CNC machines other than hobby types, operate with encoder feedback servos. Control commands a position and if for some reason the motor loses power, the control will know it did not make it and send a "axis not in position" alarm.
To further the accuracy since lead screws can change in length due to heat, some machines use linear glass scales on each axis to verify distance moved.
Regarding the encoder feedback, I am certainly open to an encoder but I really don't want to expand the complexity of thsi project much over it. I am hoping a lower resolution encoder will allow me to just input the analog data right back to the PIC. I do agree with above that a stepper motor could fail, lose power, etc and as long as no over current is detected, the PIC may not know there is a problem. I think having "in position" feedback could be a smart move. Especially since it might reduce complexity with stepper controlling. All I need to do is send DC power to a motor and turn that motor off when in position is detected. I would assume I would not even need all the channels of an encoder.
I am only familiar with optical encoders but I guess there are some other types out there. I know we found them cheap befoe but of course poor resolution which has no place for CNC applications. Maybe perfect for this though.
As before, I am open to ideas. I do like that little interrupter and for $2.50, I could just make a ring with all my positions on it and would stop at each index on the ring. Obviously this is basically an encoder though.