Fixed two mistakes.... Add some tests.

Somehow I made two mistakes…
1. The first move should be made by the darker piece.
2. The previous order of the dark and light squares are wrong, actually
reversed….

So I fixed them and change the tests accordingly. Also delete some
repeated codes in the unit test of the service.

1. Added tests for winning when the opponent has no more moves even
still has pieces on the board. (Including codes in the service)
2. For the E2E test, add a sample game for testing.