Ignore duplicated hops and correctly handle hops which never return a response

This branch implements 2 fixed based on findings in #2:

1. After we have first seen the hop for a final destination, ignore hops with the same target which come afterward (have bigger hop number).
2. Correctly handle hops which never return a response