2 пункт довольно сложный.
сейчас много завязки друг на друга, что тесты только тормозить будут.
@hiqsol можешь посмотреть в своих рабочих проектах, какой из публичных методов вообще используются(Builder::build/rebuild, прочее).
п.с. много методов торчат наружу, например, getOutputDir, getBaseDir, которые друг друга прокидывают.
я предлагаю для сохранения АПИ оставить метод Builder::build/rebuild, дальше смотреть по обстоятельствам.
сейчас первая задача это сделать +- читаемый вид, разбить классы на простые методы и уже на них писать тесты.
кто что думаешь по такому решению задач?