C++ Primer: Stephen Prata Chapters 13-18