own exception classes AuthenticationException and StorageException instead of invalid_argument and logic_error