Add programmatic API

Detail are in the doc. 

@arikon @scf2k 
вот этот try-catch вынести бы в отдельную функцию `readFile` по аналогии с `parseYAML` тогда код станет чуть более понятным. Кстати, можно эти две функции объявить внутри `readYAMLFile`