Update question archive/visibility status via API
Before, we relied on a DeferredUpdate in SpecialHomepage::execute to make
changes to question records stored in the user's preference.
TransactionProfiler is not happy about this as it's a write on a GET.
Additionally, we want the homepage to load as quickly as possible so we will not
do the full checks on each question (is it archived, is the revision deleted,
etc) but will do that via the API request to get updated questions after the
page has loaded.
Also, change the API to not throw an error if no questions are loaded since this
is now a common scenario - previously, the API was only used after posting a
question via the question poster dialog, so not having questions would be
considered an error.