Add sequential Haskell implementation (using Data.IntSet)