Change comms to use template bridge design pattern.