-The OString class now stores a static const member mEmptyString as a shortcut to quickly construct empty OStrings.

git-svn-id: http://odamex.net/svn/root/trunk@4219 b0bcef46-2027-0410-bd56-ab726e9a1d04
-Forgot to insert the hashed string value to the hash-to-id lookup table when adding a new string to the OString table.
-Avoid some unnecessary temporary std::string construction when c-strings are passed to the OString constructors / assignment operators.
-Implment iequals.
-Add a static member function to print the contents of the OString Table for debugging purposes.

git-svn-id: http://odamex.net/svn/root/trunk@4220 b0bcef46-2027-0410-bd56-ab726e9a1d04
-Avoid using non-local static members for the StringTable and StringLookupTable in OStream. Ensure those tables are properly initialized with local static members (singleton-style).
-This prevents problems from occuring when non-local static OString objects are initialized prior to the static StringTable and StringLookupTable members of OString being initialized.

git-svn-id: http://odamex.net/svn/root/trunk@4221 b0bcef46-2027-0410-bd56-ab726e9a1d04