Add 2d triangulation.

Other minor changes:
  * `MeshDescr` becomes `TriMesh` and is generic wrt. the vector type
    so it can represent a 2d planar mesh as well as a 3d mesh.
  * `PolylineDescr` becomes `Polyline`.
  * The procedural generation of quads is now generic wrt. the vector
    type (it is no longer 3d-only).

The `triangulation` and `utils` modules are not very well named and
placed on the hierarchy.