Update exception types
Update exception types

Add a couple of new ones for filesystem structures. Changed the
inheritence hierarchy to work better with python default exceptions.
Added docstrings to all classes.

UCSD-ANF/pyzfsautosnap,UCSD-ANF/pyzfsautosnap,UCSD-ANF/pyzfsautosnap