Add unicode text support to charts and context2D.

This patch assumes all 8-bit strings rendering in the OpenGL context2D
device are UTF-8 encoded, and uses vtkUnicodeString::from_utf8 to allow
extended character sets to be used in Context2D 8-bit strings.

This also fixes an issue with UTF16 rendering alignment, and updates the
image cache to use 16-bit strings for freetype renderings and 8-bit strings
for mathtext rendering.

Change-Id: Ic5f905f0a2ba70919e5df59120ce7a8ee536945a
Add tests for unicode chart rendering.

Change-Id: Ifd7a5e7daf636d6e0cc8a8ff96aa85be84b24e7d
Use the std::string API from vtkContextUnicode

Change-Id: If628184669023be1e10774a93d47a4d1b6149b3e
Merge topic 'unicode-charts-master' into master

597cfab0 Use the std::string API from vtkContextUnicode
dff00e9e Add tests for unicode chart rendering.
5ff4f80b Add unicode text support to charts and context2D.