Introduced ThingPageFactory

Really just refactoring, to reduce some messy coupling of page params.