Implementing context and personalization in chatbots