posix: avoid unneeded allocations
posix: avoid unneeded allocations

- if Checksums are disabled, then we don't need to allocate teh Sha1Writer.
- use Checksum.Disable to disable creating new checksums, and DisableCompare to
  disable comparing.  If Disable is true but DisableCompare is not, then we should
  still compare checksums if the checksum exists.  Also, even if Disable is false but the
  file has no checksum created then we can't compore during a restore.

intel-hpdd/lemur,intel-hpdd/lemur,intel-hpdd/lemur,intel-hpdd/lemur,intel-hpdd/lemur,intel-hpdd/lemur