Working through the excersices from "Structure and Interpretation of Computer Programs" (http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-4.html#%_toc_start).