Move create* test helpers to a new factory_test.go file and use TstCreatePool() wherever possible

Also renames TstSetUp to TstCreatePool.

The moving of all the create* files to a separate file is so that we can more
easily see all kinds of test helpers we have to create objects, and make sure
there's no duplication

It's probably easier to review these two commits separately, but they're
really just moving code around and/or renaming stuff, so there's no behaviour
changes.