MBS-3898: Handle totaltracks in the track parser
Create all edits in the website within a transaction

MBS-4088 identified a terrible bug where some of the edits in the release editor
are entered, but some are not (such as ones that crash). The correct behavior is
for all of these to fail, but this wasn't happening because the transaction was
too short.

I've moved the transaction outside creating edits, which has meant moving it up
into controllers.

As this is quite a wide reaching change, I've had to create tests for all
controllers to guarantee everything is working OK,
Garbage collect recordings using a constraint trigger

This allows us to defer garbage collection to the end of the current
transaction. Combined with a wider scope for the transaction (around the entire
release editor) this means that it is possible to remove one medium, but re-use
those recordings on other mediums (resolving MBS-4088).
Add some basic tests to the delete_orphaned_recordings trigger

At least guarantees that the only recordings it deletes are ones that are
changed, and that the trigger begins deferred.
Remove actions/admin/wikidoc.t as this has now been replaced

Also copy the setup for a temporary wiki doc index
Fix failing Artist::Split controller test
Merge branch 'master' into mbs-4088

* master:
  Unify t/tests.t, t/edits.t and t/controllers.t
  Change --tests to take a regular expression
  Fix failing Relationship::LinkAttributeType::Index test
  Do not export COVER_ART_ARCHIVE_UPLOAD_PREFIXER from ShowDBDefs
  MBS-4765: Update DB_SCHEMA_SEQUENCE for recent schema update
  Patch old upgrade script to also remove editor_watch_release_group_type rows
  When deleting release groups, delete any secondary types they have
  MBS-4733, don't loop over release group ids when merging secondary release group types.
  MBS-4278, correctly refer to track data when creating recording edits.
  Use dedicated comment field type (MBS-4486)
  MBS-4621, do not call the display_artwork macro if we already know the release has no artwork.
  MBS-4520, correctly updated track positions in release editor after a track has been deleted.
  MBS-4680, correctly concatenate parts of cover art urls (without duplicate slashes).
  MBS-4733, merge release group secondary types.
  Ensure that the CreateTable scripts use the same column order as what the main database uses, otherwise imports will fail.
  Require Test::WWW::Selenium::Catalyst => 0.07 in Makefile.PL and carton.lock.
  Add Approve to searchable My Votes
  MBS-4486: Trim leading and trailing brackets from comments
Fix a conflict of method names in Data::WikiDocIndex tests
Merge branch 'mbs-4088' of ssh://localhost:10015/musicbrainz-server into mbs-4088

* 'mbs-4088' of ssh://localhost:10015/musicbrainz-server:
  Add some basic tests to the delete_orphaned_recordings trigger
Move garbage_collect_orphans tests into pgtap tests
Move the delete_unused_urls tests to PGTAP, remove trigger tests from Perl code

The deferred triggers are now tested in isolation in PGTAP tests, so there's no
need to check it in the edit tests.
Remove useless/unwanted Facebook parameters
Displaying all FB page info on the sidebar
Adding autoselect for the new Other Databases whitelist
Adding aclaratory comment
Making the commenting more precise
Adding favicons for IMSLP and IBDB and cleanup for IBDB
And the actual favicons...
Cleanup for ESTER
Adding ESTER to the sidebar