exercises & notes from the o'reilly book: "Data Structures and Algorithms with Javascript" by Michael McMillan