Changed ChessState so it's based on friendly vs enemy pieces rather than black vs. white -- simplifies move validation code
Changed greedy solver to just evaluate the current board instead of trying to go multiple levels down
Added ability to detect when a king is in check