Merge pull request #5 from cachapa/master

Add message tests and fix message type creation bug
add callback
improve documentation
Add message tests