superblock encryption; getopt to argp migration
migrate from getopt to argp; expose I/O errors as exceptions with meaningful descriptions