adding basic error handling
adding base exception class