Borodin & El-Yaniv exercises 3.3, 3.7, 3.8, 4.3, 4.5, 4.6.