Add Publisher.response_class to allow class-level override of default response class