Mastering the Opening and the Middlegame