Adds a somewhat graceful handling for when exceeding API limits

I was trying to download a very large theme and while that was happening hit the API call limit. This is a somewhat placeholder patch until the [leaky bucket api changes](http://ecommerce.shopify.com/c/shopify-apis-and-technology/t/upcoming-change-in-api-limit-calculations-159710) comes into play.

This at least ensures that a full theme download can be done in a single function call. It's not fast, but they'll get everything. I think that because of the types of calls we are dealing with, this won't become as much of an issue when the new limits are rolled out.

Please review @jduff @tylerball