Refactor assign command with many options into many commands with few options.

CHANGELOG: The `genome model instrument-data assign` command has been
replaced by a set of sub-commands, "expression" for assigning by ID or
boolean expression, "all-compatible" to achieve the old --all behavior,
"flowcell" to assign all data for an Illumina Flowcell, and
"analysis-project" to assign all applicable data for an analysis
project.
New model instrument-data assign command for Analysis Projects.
CQID now only assigns data from a matching analysis project.

CHANGELOG: Automatically generated models for Analysis Projects will
only assign instrument data belonging to those Analysis Projects.
Update textual references to assign commands to use new subcommands.
Remove charris insult at root of empty tree `gmt recurrence`.
Remove empty `gmt novoalign`. See `gmt novocraft novoalign` instead.
Remove functionality-less `gmt multi-aligner`.
Remove obsolete `gmt copy-eland-alignments`.

We don't typically run ELAND anymore, and this command never worked
correctly with indexed data.
Remove root of emptied out DV1 tree.

Tab completers, rejoice!
Remove remnants of early auto-cron.
Make command fail earlier if model_group_name is taken
Merge branch 'assign-subcommands'
Remove breakpoint.
GM: if variant is seen, delete the order value and  only use genotypes with defined order values
allow library to be optionally specified
Tell Test::More there's only one test.
Test execute() not create() for failure.
GM: requires dbsnp build and gets reference from it
dont increment count when you skip inst data
Undo half-baked attempt to rename "inputs" accessor.

If at some point we'd like to rename these we should just do it instead
of cluttering up the module with conflicting definitions and TODOs and
deprecations.  This attempt didn't even reconcile all the places within
Model.pm itself that were affected, so you'd get weirdly different
behavior depending which accessor you used.