ChangesListSpecialPage: Implement two new hooks superseding 4 old ones

Old hooks (called by SpecialWatchlist, SpecialRecentChanges and
SpecialRecentChangesLinked) have been deprecated, but I'm not planning
to remove them anytime soon. (They have lots of usages in extensions
as of this writing.)

The new hooks (and their deprecated friends) are:

* ChangesListSpecialPageFilters:
  * Replaces: SpecialRecentChangesFilters and SpecialWatchlistFilters
  * The signature for this one is exactly the same as signatures for
    the other two. We might want to pass something else than $this
    here…

* ChangesListSpecialPageQuery
  * Replaces: SpecialRecentChangesQuery and SpecialWatchlistQuery
  * These hooks have wildly different signatures. The new one is a
    superset of the old ones, in a more reasonable order, with the
    addition of the name of the special page we're doing right now.

Change-Id: I9cceda5d2dcfc53c852c5682c466b48ad8f31202
Merge "ChangesListSpecialPage: Implement two new hooks superseding 4 old ones"