Implementing everything from the Purely Functional Data Structures book by Chris Okasaki