implement pub sub
add unit tests
increase version, also previous commit closes #2