implement conversation

Please review @matthewsibigtroth