download agents run their own state machine

exponential back-off for download retry

javadoc source (for development)

handle nil's in rfc3339 conversion