Added CLI arguments for upgrade simulation steps

Added "dry run" argument to only run the update simulation.
Added argument to disable migration (useful for bigger setups where
table duplication would take too much space)

Fixes  #8896 

To test:
1) `./occ upgrade --dry-run`
and
2) `./occ upgrade --skip-migration-test`

In both cases, try with a "broken" database and with a regular database.

Please review @icewind1991 @karlitschek @DeepDiver1975