Leanpub source for my book, Scala Type-Level Programming: From the Bottom Up