Fix unpopulated programs error

Fixes #241 

This fixes the filtering algorithm on programs so the first step is to reject unpopulated programs. While this was in the algorithm before, it was being short circuited by the test to see if there were any query parameters, so a call to `/v2/programs` when there were orphans would succeed if there was a query and fail if there was not.

@cmcavoy to review