Gross substitutes, optimal transport and matching models: Lecture 1