Fix stale-if-header not being added to max-age.

Depends on #25.

This fixes stale-if-header being skipped due to a backwards conditional. However, I was also running into issues with false or null being conflated with zeros, so I added is_numeric() checks before modifying $ttl.
Instead of adding a setter, can we just have this injected in the constructor?