[HW] FSM exception handling
- Make sure all FSM exceptions (unexpected event, exception during transition callback) in the acquisition/control FSM are propagated up to the caller.
- Align the control and acquisition FSM exception handling code
- Add tests of FSM behavior upon exception or error in the derived class
Closes #199