[WIP] Banner sequence campaign mixin
Additional changes included in this commit:
- Fixes an issue with submit button state and input validation for non-custom mixin parameters.
- Adds the 'json' mixin parameter type.
- Adds a public client-side requestBanner() method to mediawiki.centralNotice for subscribing wikis, to allow mixins to request a specific banner from among those available for the user in the selected campaign.
- Modifies bucket processing to provide the 'reducedBucket' data property (the bucket reduced to fit the number of buckets in the campaign).
OOjs fixes required in core: