Okay, finally I'm happy with the build structure.  &:S
Putting DiscriminatedValue in is probably a waste of time as now I've discovered
it, I'm probs gonna use Boost.Units for GeoPosition; however, I feel like the
former at least meets all my quality gates, and it basically proves that the
structure is sound.
Next stop, something relevant to the task at hand.  Wathch this space, evvybody!