Removed pqueue dependancy

We don't depend on pqueue package any more. This was used for move
heuristics ordering. The order now is driven by the order of the
different type of move ordering functions (and calling some sortBy). The
heuristics atm aren't great, still needs a rework to distinguish bad
captures from good ones, plus we should be looking at moving attacked
pieces first.
Reworked Zobrist hash calcs with dynamic updates

The zobrist hash was always recalculated from scratch. This was very
expensive with the 64 calls to `pieceAt` for each square. Now the hash
is calculated from the previous hash and the move properties
`xor`ed. The calculation from scratch has been moved into the Board
module where on `fromFEN` we still use it. We could (should?) have a
quickCheck property that the two are equal..
FIX : Flip direction of TPC hit depth check

The direction was in reverse:

  s |      depth 4
  e |      depth 3 <- we are at depth 3, we should accept 3, 4 from the cache
  a |      depth 2 <- we are at depth 2, we should accept 2, 3, 4 etc.
  r |      depth 1
  c v      depth 0
  h

This was correct before, then I got confused and flipped the direction.