adding personal exercises from thinkpython book