* Skeleton of a shim layer to hide all the complexity in one place and hence greatly simplify the rest of the design.