Create factories for diff position

Summary

In a number of places we construct diff position objects in our tests, but these are large and complex, and we don't have factories for them. We should add factories to support our tests.

Improvements

Better, clearer tests. DRY up the creation of positions so that when we add new kinds, we only have to do it in one place.

Involved components

Testing