Add more information about promotion.
Fix always give promotions to white.
Check if the king is in check while castling.
Add logic to capture en passant.