Expiry dates now safely add TimeSpans to DateTimeOffsets. This allows for someone to give TimeSpan.MaxValue as a timeout without blowing up.