begin implementing a publish-subscribe server