Implements cache policy for CJAPIRequests

Allowed values are:

```objective-c
enum
{
  CJAPIRequestUseProtocolCachePolicy = 0,
  
  CJAPIRequestReloadIgnoringLocalCacheData = 1,
  CJAPIRequestReloadIgnoringLocalAndRemoteCacheData = 4, // Unimplemented
  CJAPIRequestReloadIgnoringCacheData = CJAPIRequestReloadIgnoringLocalCacheData,
  
  CJAPIRequestReturnCacheDataElseLoad = 2,
  CJAPIRequestReturnCacheDataDontLoad = 3,
  
  CJAPIRequestReloadRevalidatingCacheData = 5, // Unimplemented
  
  CJAPIRequestReturnCacheDataThenLoad = 6,
};
typedef NSUInteger CJAPIRequestCachePolicy;
```

```CJAPIRequestReturnCacheDataThenLoad``` is the only new value, all others proxy to their respective ```NSURLRequestCachePolicy``` counterparts. This new value loads data from cache once (if it exists), deletes that cached data and then retries the request in order to bring fresh data in.