Add basic string formatting.

Implemented using `vsprintf` or `vsnprintf` as it's backend. Bufferwise
propably not as safe or customizable as it should be.