createMETS2: namespace all elements

This ensures that intentionally non-namespaced elements (such as
embedded tool output) get interpreted correctly as having no namespace,
rather than being within a default namespace defined earlier.

Fixes #7055.
PREMIS Rights: month and day optional

refs #7099

PREMIS Rights dates should accept year, year-month or year-month-day.
Update matching to make month and day optional. Update year regex to allow
any 4 digit year, instead of just ones starting with 0, 1 or 2.

Update vendored library from 2011 version to version at 3.0.55 tag in
https://github.com/RobinHerbots/jquery.inputmask  This allows optional
segments in the regex.
Update createStructuredDirectory

Move createStructuredDirectory into archivematicaFunctions and rename
create_structured_directory so it can take advantage of the directory
constants and functions already there.  Add manual normalization
constants to that file as well.  Update all callers, remove now
deprecated archivematicaCreateStructuredDirectory.py/sh, and do some
minor cleanup.
Add AIP reingest button

refs #6488

Add Reingest button to the archival storage tab which POSTs to the
storage service reingest endpoint.  Add reingest form and storage
service helper to support this
Initial updates for Re-ingest AIP

refs #6488

Reuse existing DIP from AIP MSCLs and update for newer, more general use
case.

Update determineAIPVersionKeyExitCode to default to the only path
available, as there are no exceptions to AIP processing currently.
Remove assignFauxFileUUIDs and renameDIPFauxToOrigUUIDs as we won't be
using fake IDs to separate the original SIP from the reingested AIP.

Many SQL updates:
* Fix typos, remove bizarre links
* Update microservice groups to make them more contiguous
* Verify checksums moved to after metadata processing, as metadata
generates checksums too
* Metadata reminder moved to before submission documentation and
metadata processed
* Remove old style file ID
* Update reingest chain to use existing DIP and AIP creation, instead
of custom path
* Add processingMCP to reingest path
* Remove useless magic link, clean up setup for normalization and
setting which normalization node to go to
* Delete all TasksConfigs and StandardTasksConfigs that have no foreign
keys pointing at them
Rename DIPfromAIP to reingest AIP

refs #6488

Rename MicroServiceChainLinks and watched directory to reflect actual
purpose.
MCPServer sets currentPath in watchedDirectories

When starting a chain from a watched directory, ensure a SIP's
current path matches the one found in the directory.  This can happen
during AIP reingest, where the last know location is not the watched
directory it is currently in. Do not change currentPath for DIPs, as
they can run in parallel with the originating SIP and overwrite the
SIP's information. Also, some cleanup.
Entry filter in browse is configurable

The filter to determine which files/folders are displayed when browsing the
storage service (ie starting a transfer) is now a parameter, instead of
builtin.  Default is still to display folders but not files.
Stub of add metadata files

wip
Fill in add metadata files

squash with above and add better commit message later
Post API information to storage service

If default setup requested, post the initial user and API key to the
storage service when registering.
Add start reingest endpoint

refs #6488

Add start reingest endpoint to move the new SIP from tmp to the reingest
watched directory.  This is where any pre-processing will happen, such as
clearing remnants of the old SIP from the DB.

Update helpers.json_response to accept a status code to pass to the
response.
Handle failed reingest

refs #6488

Update reject reingest to use normal rejected SIP chain.  Rejected or
failed SIPS attempt to reset their ingest status with the storage service.
Display errors from the storage service properly when starting reingest.
Add reingest SIP type

refs #6488

Add an AIP/AIC Reingest type to sip_types to distinguish between a normal
SIP and one that is being reingested.  This is primarily useful when
storing the AIP, as we want to update the package on the storage service
(PUT), not create a new one (POST).
Support metadata files added during Ingest

refs #6488

When writing the METS, check for a metadata.csv added to the SIP, in
addition to ones from the originating transfers.  Add conversion of
metadata.json to metadata.csv for files added during ingest.
Restructure reingest AIP to resemble SIP

refs #6488

Reingested AIP restructuring makes it look more like a normal SIP, instead
of putting most things in submissionDocumentation.
Parse METS file into DB during reingest

refs #6488

wip
Reingest AIP: Use full normalization node

refs #6488

Because of issues with preconfigured choices and having multiple nodes with
the same purpose, redirect reingest AIP through the normal
preservation-and-access normalization node.
DIP creation based off DIP directory, not unitVars

refs #6868

Approve normalization had two MicroServiceChainLinks nodes, which
caused problems since the new processingMCP matches based on UUID not
node name.  However, the only reason to have two approve nodes was to
set whether or not a DIP was created.

Update the DIP creation to check to be based on whether or not the DIP
directory exists, instead of unitVars controlling the workflow.  Remove
all related workflow unitVars.  Merge approve normalization nodes.
AIP Reingest: Delete old ES index for AIP

refs #6488

If reingesting, delete the old ElasticSearch index for that AIP before
indexing to prevent duplicates.