initial work on board and pieces

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add human representation for pieces

Signed-off-by: Cristian Stoica <crististm@gmail.com>
use FEN notation to initialize board

Signed-off-by: Cristian Stoica <crististm@gmail.com>
use 0x88 board representation

Signed-off-by: Cristian Stoica <crististm@gmail.com>
make the board content more readable

Signed-off-by: Cristian Stoica <crististm@gmail.com>
remove code duplication

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add rook pseudo-moves method

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add pseudo-moves method for knight

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add pseudo-moves for bishop

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add pseudo-moves for queen

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add pseudo-moves for king

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add pseudo-moves for pawns

Signed-off-by: Cristian Stoica <crististm@gmail.com>
fix bug on board representation

Signed-off-by: Cristian Stoica <crististm@gmail.com>
remove code duplication

- take move generator from gnuchess

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add en-passant captures

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add class to represent empty squares

Signed-off-by: Cristian Stoica <crististm@gmail.com>
make a static split of functions to generate moves

Signed-off-by: Cristian Stoica <crististm@gmail.com>
add castle moves

Signed-off-by: Cristian Stoica <crististm@gmail.com>
remove attack checks from pseudo-moves

Signed-off-by: Cristian Stoica <crististm@gmail.com>
for now, make the position check a function

Signed-off-by: Cristian Stoica <crististm@gmail.com>