Package: add support for checking fixity

This teaches Packages how to check their own fixity, and report the
results. This is currently only supported for bags (which have a
record of their own fixity), e.g. AICs or AIPs.

This also adds a new API which allows external services to request
fixity scans and receive a report of the results. The URL is in the
format /file/<uuid>/check_fixity/

refs #6567
Package.extract_file: handle uncompressed packages
Store AIP: handle AIPs without pointer files

This is needed to support uncompressed AIPs, which do not have
pointer files.

refs #6589
Package: add new compress_package instance method

This supports features such as downloading entire AIPs for
uncompressed AIPs.

Note that this currently only tarballs the file without performing
actual compression.
PackageResource: allow downloading uncompressed packages

refs #6589