Added AVL trees and wrote all tests for them. Code cleanup (especially interface
cleanup) is in order.