[boost] Boost Graph Library: why are `source()`/`target()` non-member functions?