[TemplatePoint] Added DIM as nontype template parameter (default=3).

Changed also
- the data type that holds the coordinates from pure C array to std::array<T, DIM>,
- the implementation of write() and read().
Added weighted point class and a test.
Renamed file for the test WeightedPoint classes.
Changed one constructor of TemplatePoint.
Changed argument from initializer list to std::array to make old compilers happy.
Use std::copy instead for for-loops, std::array iface for c-array access.
Improve TemplateWeightedPoint constness.
[TMeL] Correct test argument order.
Merge pull request #215 from TomFischer/GeneralizeTemplatePoint

Generalizes TemplatePoint and adds class template TemplateWeightedPoint