Add post-query filtering to Pager

Adds an argument to PagerPage::getPage() which is a filter
for the query results.  This filter receives the query results
and returns whichever results are deemed acceptable.  If after
filtering there are not enough results it will repeat the query
to get a full page.

This is done as a stop-gap solution for filtering moderated
posts from the topic list.

This is generally reasonable because it doesn't actualy query
all the way to the backend, typically we should have pulled a list
of id's from memcached and have that in process. Querying again is
just slicing it and then fetching the new results by primary key.

Change-Id: I5497be60cf60b2ba0b319a55a118ef7bd2938b67