Added implementation.
Corrected method signatures, added generics.
Renamed Destination into Source, according to quickgraph.