in progress
API improvements on MessageEmitter