Allow application to override fail function and/or critical behaviour