A History of Haskell: Being Lazy With Class