Added better pawn move validation. And supporting methods on chessboard