Fix code for igraph v0.6 interface

The release was almost a year ago, it is time to use it.
The only real change is a missing new argument to some functions.
Better error messages during option parsing

Now we print the option that triggered the error and
differantiate between missing option arg and invalid option.
Add a lowest single ancestor analysis

The lowest single ancestor of a vertex v is the lowest vertex on all paths
between the single source of a DAG and v.

This can be used for example to compute the lowest task that has all the
knowledge to spawn v (in task models where tasks are created and restricted to
dependencies to their siblings + father).

This patch provides:
- a lowest common ancestor offline algorithm (preprocessing + constant time
  queries).
- a LSA algorithm building a special tree and using LCA on it.
- command line access to the LSA, also checking that the input DAG contains a
  single source.
- documentation updates/sync for analysis methods.
- ggen lib update