Improved handling of exceptions

- Changed the way public exceptions are thrown when they hold
'sensitive' information
- Added status header