LandmarkGroup tojson method and PointGraph

This makes a bunch of changes again.

  - Adds ``Graph``
    - Takes an adjacency matrix, no spatial information
  - Adds ``PointGraph``
    - Combines ``Graph`` with ``PointCloud``
  - Fixes ``from_mask`` on ``TriMesh``
  - ``TriMesh`` can convert to ``PointGraph``
  - Changes ``all`` label for default ``LandmarkGroup`` label to be ``None`` to match ``LandmarkManager``
  - Fixes viewing for ``Trimesh`` and adds viewing for ``PointGraph``
  - Refactors the labelling methods a bit and adds graphs where necessary (this is a bit untested due to lack of good data)
  - Fixes the tongue annotations (they were missing points!)