A learning chat bot with an in-built events system