drop saving to xml code (not used, takes ages to run and few programs can handle the result!)
rework program factory interface to return Program& and replace auto with auto& where required