Position Hashes
Implemented Zobrist hashing, and added a 64-bit hash value field to the board struct.  This field is updated whenever the board position changes.
This hash value will be used in the Transposition table once that is implemented.