My implementation of Public/Subscribe pattern