alignment setup and teardown

Alignment doesn't work because nodes aren't topologically sorted. However, the
setup and teardown methods do.

TODO: the subclassing of protobuf vg::Graph in VariantGraph should be replaced
by a graph object in VariantGraph. Not super-critical, but soon enough this
will become a problem because it complicates the definition of the class
destructor.