Added New Error Class

Added a new error class to encapsulate error handling functionality
across the driver.