Haskell flocking simulation