Abort download after receiving a "try again" response.

Renamed enum "AutoingestionResponseCodeTryAgain" and related constant
to "...TryAgainLater".

Added "tryAgainLater" boolean property to AutoingestionResponse.
Added unit test coverage for "tryAgainLater" and "networkUnavailable"
properties.

Modified -downloadReports method in Tool to abort download when a
try again later response is received.

Background:

Changed Autoindigestion to stop downloading reports when the first
"try again in a few minutes" response is received from iTunes Connect.

Sometimes, iTunes Connect report generation is delayed and iTunes Connect
returns a "try again" response.  Previously, Autoindigestion checked for
the availability of each missing report in turn, even after the first
"try again" response, which can lead to skipping a report in rare
circumstances.  If, while checking for multiple reports of a single type
for a single vendor, the "try again" is received for the first report,
Autoindigestion would proceed to check for the next missing report in
chronological order.  It is possible that the newer reports might suddenly
become available and would be downloaded normally.  The next time that
Autoindigestion runs, it will look for the most recently downloaded report
for each vendor + report type, permanently skipping the earlier missed
report.

Here are sample logs illustrating the problem:

2013-08-08 07:47:16.512 Autoindigestion: 04-Aug-2013 Daily Sales Report for Able Pear Software: # this was skipped
	The report you requested is not available at this time.  Please try again in a few minutes.
2013-08-08 07:47:18.015 Autoindigestion: Downloaded 05-Aug-2013 Daily Sales Report for Able Pear Software: S_D_80082390_20130805.txt.gz
2013-08-08 07:47:18.734 Autoindigestion: Downloaded 06-Aug-2013 Daily Sales Report for Able Pear Software: S_D_80082390_20130806.txt.gz
2013-08-08 07:47:19.436 Autoindigestion: Downloaded 07-Aug-2013 Daily Sales Report for Able Pear Software: S_D_80082390_20130807.txt.gz

2013-08-10 07:30:18.150 Autoindigestion: Downloaded 08-Aug-2013 Daily Sales Report for Able Pear Software: S_D_80082390_20130808.txt.gz
2013-08-10 07:30:19.672 Autoindigestion: Downloaded 09-Aug-2013 Daily Sales Report for Able Pear Software: S_D_80082390_20130809.txt.gz
Improved "Security Considerations" section of man page.

Added better wording to some awkward sentences.
Added incomplete implementation for yearly report category.

Added KDateTypeYearly constant and -isYearly method to ReportCategory.
Modified calculation of autoingestion jobs in ReportCategory to handle
daily, weekly and yearly reports.  Made an initial guess as to number of
yearly reports available.

Added -fiveNewYearsAgoForDate: and -nextYearForDate: methods to
NSCalendar (Autoindigestion) category, with default implementations
for now.

Added initial unit test for NSCalendar (Autoindigestion).
Implemented NSCalendar (Autoindigestion) methods.

Renamed -fiveNewYearsAgoForDate: method on NSCalendar (Autoindigestion)
category to -fiveNewYearsDaysAgoForDate.

Created real implementations for -fiveNewYearsDaysAgoForDate: and
-nextYearForDate: methods.  Added -previousNewYearsDayForDate: method
to the category.

Added unit tests for both old and new methods on the category.
Cleanup unit test for NSCalendar (Autoindigestion) category.

Make "today" local variable into an instance variable.
Added -date: helper method to NSCalendar_AutoindigestionTest class.

Used the -date: helper to make test data more explicit in tests to improve
test readability.
Added NSArray (Autoindigestion) category.

Added -filteredFilenamesUsingRegularExpression: method onto the
category and added unit tests for it.

Replaced code in ReportCategory -autoingestionJobs method with call
to -filteredFilenamesUsingRegularExpression:.
Added ReportFilenamePattern class for matching filenames.

The ReportFilenamePattern class encapsulates information about the
expected pattern that various report filenames will follow.  It builds
a regular expression for matching filenames given the vendor ID and
report type details.
Added unit tests for ReportFilenamePattern.

Added -reportDateStringsFromFilenames: method to ReportFilenamePattern
and extracted similar code from ReportCategory -autoingestionJobs method.
Added today property to ReportCategory.

The today property is readonly and set when the ReportCategory instance is
created.

Made calendar and locale variables into static class variables for
ReportCategory.

Added -startingReportDate method for calculating the starting report
date based on the date type.
Renamed -dateFromReportDate: to -dateFromReportDateString: on NSCalendar (Autoindigestion).

Added unit test covering yearly report date string.
Extracted -nextReportDateAfterReportDate: method in ReportCategory.
Renamed some local variables in -autoingestionJobs method

Added -mostRecentReportDateStringFromFilenames: method to
ReportFilenamePattern class.

Renamed methods in NSDate (Autoindigestion) category:
  -isEarlierThanDate: to -isLessRecentThanDate:
  -isLaterThanDate: to -isMoreRecentThanDate:
Added yearly sales summary reports to vendor report categories.
Changed order of arguments in ReportCateogry -init method.

Renamed parameters in ReportCategory -init method to remove "the" prefix.
Added +posixCalendar method to NSCalendar (Autoindigestion) category.

Replaced calendar static variable in ReportCategory with use of [NSCalendar posixCalendar].
Changed -mostRecentReportDateStringFromFilenames: method to return a date.

Renamed the ReportFilenamePattern method to -mostRecentReportDateFromFilenames:
Updated project settings for Xcode 5.

Also updated .gitignore.
Updates to README file.

Now building with Xcode 5.  Updated launchd plist example to include multiple
run times.
Updated example launchd plist in README and Documentation files.
Added new response code for yearly report date out of range.

Added AutoingestionResponseCodeYearlyReportDateOutOfRange enum value
for AutoingestionResponse when yearly report date is invalid.