Move position code to its own package. This is dumb, but whatever.
Should not include cyclical dependency.