added and updated necessary stuff for final review. castling added.