Added tracking if pieces have been moved, pawns can move double if clear and have not moved, bug fixes to valid moves with Pawn