Add timeouts and configuration file. Replace 1 version with 2 ver

  * Change invoke to enqueue
  * Add support for configuration file (see README.md)
  * Support timeouts for requests