BUG: Fix WritePointsTyped() to no longer use conflicting typenames

"PointValueType" was both the template parmeter of WritePointsTyped() and
a typedef of the enclosing class. This was generating errors with GCC on
OSX. Renamed the template parameter to "TPointsBuffer" to fix this error.

Also added a static_cast to make the conversion to the internal value type
explicit.

Also made the parameter for WritePointsTyped() a const pointer to const
values, to clarify its intended use as an input buffer.