State::unmake_move
legal move generation, ridiculously factored but with potential for speed
big refactoring; separate attack generation and move generation so that move generation can take state
faster random moves
Merge branch 'feature/propagate-king-captures' into develop