- continue tuning version selection; the upgrade operation chooses
implicit bases, so that all potential bases are matched against the
possibly limited list of upgrade targets; downgrade does not use implicit
bases, so that unless "base" is sent, the base is an individual revision
target.  this is based around the asymmetry that in terms of the versions
in the alembic_version table, those numbers are always bases for upgrade,
and heads for downgrade.