String wrapper to convert between QString and lg2

Introducing `Git::Internal::String` wrapper class to simplify conversion from and to QString.

* Should it be exported to the public interface? If so, the GitWrap API should change to take this class instead of a QString.
Generally spoken, I'd express that in the actual API (class definition), basically by making every non-modifing method `const` and the `mConvertedStr` member `mutable`.

non-modifing is meant in the semantic case, not literally. It _has_ to change `mConvertedStr` occasionally, but that's why it is mutable. This is by the way the same reason, I usually declare the base class for reference counting like:

~~~C++
class Base {
public: void addRef() const { mRefCount++; }
public: void delRef() const { if (!--mRefCount) delete this; }
private: mutable int mCounter;
};
~~~