revamped error handling and presentation