Don't retry when File can't be created

Fail limits don't apply to IOException because the most common failure is network issues.  A FileOutputStream throws a FileNotFoundException when it can't write to a given file, so if that error is thrown the app can safely assume that the storage location is currently unavailable.