This is used by tests.
Just to have a feeling on how hard it is to change the implementation from dict
to model objects.
Note that it's particular here as we are returning an optional tuple of
OriginVisit and OriginVisitStatus. Whereas before we returned a mixed
visit/visit-status dict.
As an incremental change approach, this introduces similar function to existing
ones to manipulate directly model object (instead of dicts as existing code).
This does not refactor the common behavior yet to avoid impacting the other
endpoints. This will be eventually dealt with in subsequent diffs.