Castling is now supported apart from move generation.