Allow per-request cache skipping

Reviewed::Requests now have "with_no_cache" and "with_new_cache" methods
that will append "reset-cache" and "skip-cache" query params to the url
on a per-request basis
catch Errno::ETIMEDOUT in Client
Add client cache which respects cache reset params
Switch cache adapter to redis
Merge branch 'master' of github.com:reviewed/reviewed-api-ruby
Changing Redis URL to come from ENV

I used REDISCLOUD_URL, figuring that's what we've been using.
refactor tests to use mocks/stubs for api and cache store

get rid of singleton to improve testability
include Reviewed-Auth header in cache key
move Reviewed::Cache to Faraday::Cache as it's a middleware
Merge branch 'client-cache-take-2'

fix for new api response in vcr fixtures

Conflicts:
	spec/fixtures/vcr/Reviewed_Article/associations/attachments/assigns_attachments_to_the_correct_class.yml
	spec/fixtures/vcr/Reviewed_Article/associations/attachments/does_not_has_many_attachments.yml
	spec/fixtures/vcr/Reviewed_Article/associations/attachments/does_not_have_any_matching_attachments.yml
	spec/fixtures/vcr/Reviewed_Article/associations/attachments/finds_attachments_by_tag.yml
	spec/fixtures/vcr/Reviewed_Article/associations/attachments/gets_gallery_attachments.yml
	spec/fixtures/vcr/Reviewed_Article/associations/deals/has_many_deals.yml
	spec/fixtures/vcr/Reviewed_Article/associations/pages/has_many_pages.yml
	spec/fixtures/vcr/Reviewed_Article/associations/products/has_many_products.yml
	spec/fixtures/vcr/Reviewed_Article/associations/products/returns_products_of_the_correct_class.yml
	spec/fixtures/vcr/Reviewed_Article/associations/related_articles/has_many_related_articles.yml
	spec/fixtures/vcr/Reviewed_Article/find_page/finds_a_page_with_a_matching_slug.yml
	spec/fixtures/vcr/Reviewed_Article/primary_product/returns_a_product_of_the_correct_class.yml
	spec/fixtures/vcr/Reviewed_Article/primary_product/returns_nil_if_does_not_respond_to_products.yml
	spec/fixtures/vcr/Reviewed_Article/primary_product/returns_the_primary_product.yml
	spec/fixtures/vcr/Reviewed_Collection/collection_data/fetches_the_first_page_by_default.yml
	spec/fixtures/vcr/Reviewed_Collection/collection_data/is_enumerable.yml
	spec/fixtures/vcr/Reviewed_Collection/next_page/fetches_the_next_page_of_results.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/indicates_if_the_page_number_is_out_of_bounds.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/indicates_whether_this_is_the_first_or_last_page.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/returns_the_limit_value_max_per_page_.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/returns_the_number_of_entries_on_the_current_page.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/returns_the_offset.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/returns_the_total_item_count.yml
	spec/fixtures/vcr/Reviewed_Collection/page_attributes_pagination_/returns_the_total_number_of_pages.yml
	spec/fixtures/vcr/Reviewed_Collection/previous_page/fetches_the_previous_page_of_results.yml
	spec/fixtures/vcr/Reviewed_Collection/previous_page/returns_nil_if_there_is_no_previous_page.yml
	spec/fixtures/vcr/Reviewed_Product/associations/attachments/does_not_have_any_matching_attachments.yml
	spec/fixtures/vcr/Reviewed_Product/associations/attachments/matches_attachments_by_tag_properly.yml
	spec/fixtures/vcr/Reviewed_Product/associations/attachments/no_longer_has_many_attachments.yml
	spec/fixtures/vcr/Reviewed_Product/associations/attachments/returns_attachments_by_tag.yml
	spec/fixtures/vcr/Reviewed_Product/associations/attachments/returns_attachments_of_the_correct_class.yml
v 0.6.0