vtkOStreamWrapper: Support std::string

This will allow std::string to be used with vtkSet/Get macros.

See discussion thread

 VTK coding conventions clarification
 http://www.vtk.org/pipermail/vtk-developers/2014-March/014867.html

It is not possible to portably forward-declare std::string or the
std::basic_string<> template, but we do not want to include <string>.
Instead, use a template that happens to match std::basic_string<>.

Add a new "TestOStreamWrapper" test case to cover use of the
vtkOStreamWrapper with std::string in a translation unit that acts
like wrapper-generated sources (define VTK_STREAMS_FWD_ONLY) where
no <iostream> is included.

Suggested-by: David C. Lonie <david.lonie@kitware.com>
Change-Id: I56b184ea8f6c5341fd44b2de1a2adc59b1b32e5e
Merge topic 'vtkOStreamWrapper-std-string' into master

54003c65 vtkOStreamWrapper: Support std::string