tidy up error messages, and handle undefined responses again.