Introduction to Higher-Dimensional Type Theory