Further progress on depth first search. A stack was what I was after.
Dealt with case where vertex is seen multiple times in neighbours list.
Reorganised and added doc strings.