Реализовал через приватное поле класса CustomTree: List<Entry> list = new ArrayList<>(), первый элемент которого - root. На данный момент size() возвращает list.size() - 1 Непонятно, что нужно сделать: Переписать как-то метод size()? или Реалзиовать по-другому метод remove()? Мозги кипят, уже ничего не соображаю :(