Promises instead of callbacks.
A new class for messages.
Comments and simple refactoring in the background.