Add programmatic API

Detail are in the doc. 

@arikon @scf2k 
Почему не `new Gemini(options)`?

Можно в качестве хелпера добавить статический метод:

```js
Gemini.configFromFile()
```