A course for MSc students that teaches them core concepts in Natural Language Processing required to understand how Large Language Models work