Updated documentation

### Exception classes

- Updated documentation of `Exception` classes
- Reviewed non-`ResponseException` classes and updated the base class in cases where a type more appropriate than just `Exception` exists
- Added a default error message to constructors that did not already have one

### Other

- Updated documentation for interfaces *except* for provider interfaces