Documentation updates
Add exception classes for more specific error handling