Extension:GettingStarted/Article selection

This documents changes to how articles are selected for users:

Production (before changelog) (da03920):
 * SpecialGettingStarted requests 12 articles from CategoryRoulette
 * CategoryRoulette attempts (up to 100 times) to select n (12) distinct articles from a given category. The categories are task-specific:
 * copyedit - en:Category:All_articles_needing_copy_edit
 * clarify - en:Category:All_Wikipedia_articles_needing_clarification
 * addlinks - en:Category:All_articles_with_too_few_wikilinks
 * SpecialGettingStarted then filters them based on length (> 0 && < 10000), editable (full userCan check, not quickUserCan), and no excluded BLP categories (en:Category:Living_people). It takes the first 3 (or however many it can get of the number returned by CategoryRoulette) that meet these criteria.

There are a couple things that make this complex, mainly that most of the filtering is done at display time. If it were all done at save-time (requires care to avoid slowing down the save noticeably) or job queue-time, we would not have these display-time failures.