Add programmatic API

Detail are in the doc. 

@arikon @scf2k 
Если функция вызвана с двумя аргументами, то первый – путь к файлам, второй – опции.
Если с одним, то он – опции, а пути дефолтный.
(Укажу в комментарии)