Mesh lib add properties

This PR is for discussion.

- It adds an implemention to manage properties within the Mesh. 
- The properties are not associated to specific mesh items like mesh nodes or mesh elements. The user has to associate properties to mesh items itself. 
- The properties are not restricted to a particular data type, you can use several types like double, vector or matrix types at run time together.
- An usage example is given in the test.
Good point ... I would vote that if a property is part of the mesh it should also be handled (i.e. deleted) by the mesh.
If we use a wrapper class (as Lars suggested) this class should handle it.