[OPTIMISATION] Removed duplicateboard method call
[OPTIMISATION] Removed duplicateboard method call

The duplicateboard method requires a lot of overhead to do. When
generating the illegal move result, it was calling this instead of
just making the move, checking and then reversing the move.

By removing the duplicateboard method call the execution time has
roughly halved.

kmiller96/QuantumChessEngine,kmiller96/Quark-ChessEngine,kmiller96/Quark-ChessEngine