A basic string class backed by a reference counting string pool. Storing nullptr is OK, but avoid op== and str() then.