not quite done: now castling works!