Since some basic containers will be separate libraries and independently versioned, it is possible for code using one version to need to communicate with code using another version.
In general this can be solved with duck typing and converting between versions as needed.
Needs more thought...