1. Refactor
2. Add support for different ports
3. Rename api_host to host for less unneeded verbosity
Update readme