Update SWORD views & helpers for models changes - deposits

Update deposit-related endpoints for model changes - list files, accept
new files, finalize, delete, state.  Delete PackageDownloadTasks and
PackageDownloadTaskFile when a file is deleted from a package.  Add
unicode names to models.  Minor refactoring, notably moving docstrings
inside functions.
Rename SWORD Server to FEDORA

refs #5796

A generic SWORD server would operate slightly differently, and
not required the fedora username/password.  Rename the space to
reflect this.

Update protocol constant, rename space and form, update all places that
reference those.
Add migration

Add migration for FEDORA related changes.
sword/helpers: replace custom md5 function
Add File, Callback models
SWORD: record each file to the database

In the absense of persistent UUIDs originating in the storage service,
storing the checksum and source ID allows the file to be recognized
when it comes back around again.
Add Callback forms, views

This allows for generic REST API callbacks to be associated with given
types of events. A callback is given a URL pattern, an HTTP method to
use when contacting that URL, and an expected HTTP status.

The only such event right now is "post-store", but this could be used
other places. For instance, AIP reingest could use this instead of
using its custom callback.

refs #6788
Add post-store AIP callbacks

This adds a new REST endpoint that allows a post-store callback to be
executed for every file in a given AIP.

This will only trigger for files which exist in the File table, which
in practice means only files that were transferred from Islandora.

refs #6788
Space: update_package_status must always return a tuple
SWORD helpers: name Fedora METS after object ID
SWORD API: store all METS files

Previously, only the first METS file for a given set of files would be
stored. This stores every METS file, so that multi-file transfers will
contain the full set of metadata.
SWORD: download MODS records with OBJ items