Notes from a course at Columbia University taught by Professor Dennis Tenen: