Abstract trees

Based on Goodrich and Tamassia