Graph command

Fixes #91. The implementation itself is quite trivial, what's verbose about this PR is exposing the right structures (5 first commits).
Can you add a newline at the end?