first attempt to define an interface for replica support (WIP)