По поводу проблем с утечками, возникла у меня идёя. Возможно костыль, но просто хочу поделиться. Ещё не продумал до конца эту идею, но это детали.
В общем, это подражать классу TComponent, т.е. всегда в конструкторе указывать родителя. Родителем будет особый класс, который инициализируем и уничтожаем модулем (init.., final...). Родитель уничтожит все дочерние объекты как TComponent.
Сильно не пинайте, придумал только что.