once a string has been forced we already have dynamic storage allocated for it, so we can easily reuse that storage instead of copying.
Fixes #294.