Text this: Lecture Notes on Algebraic and Coalgebraic Methods for Calculating Functional Programs