libtime: `strftime` now returns `Result<String, String>` instead of `String`.



[breaking-change]
The [parsers in semver](https://github.com/rust-lang/semver) have some examples of this. It's ok to not update `strptime` at this time, it can always be done as part of a later PR as well!