Finished most of the implementation of the AvlTree. Some of the methods are common between both Trees so they should be moved to the abstract class.