added `chrono::format` module and `format` methods.

this is a saner replacement for `time::strftime`; it does not allocate
the additional memory.