Added the peer superclass to share code