Graph command

Fixes #91. The implementation itself is quite trivial, what's verbose about this PR is exposing the right structures (5 first commits).