Since the value translator lookup might potentially get rather giant in the future, it is wrapped in a trivial
on-demand provider to ensure it is really only created (and held in memory forever) if necessary.
Default implementation that stores referenced instances only if required (i.e. if they have no OID assigned yet,
therefore have not been stored yet, therefore require to be stored).