replace messenger with more robust "session" singleton
update CHANGELOG
tidy up