Added documentation, better request error handling, added API rate limits validation