A vertex (B) is a predecessor to another vertex (A) if an arc points from
B to A. In such an arc, B is considered the 'tail', A is considered the
'head', as it would be visually represented with an arrow:
B -> A
Note that, in set terms,
g.adjacentTo(x) == g.successorsOf(x) ∪ g.predecessorsOf(x)