added improved MessageSystem