Added Visitor pattern, book finished