Haskell implementation of the Bitcoin reference specifications