TODO
King cannot move under check
Refactoring: removed code that was already covered in another place (and easier): code that checks if the king is not exposed to check by the move.
Intermediate pieces mustn't allow castling
Queen-side check for obstacles to castle
King-side occupied prevents castling
+1 test