Add chat

Please review code so we can merge...