Distributed CONGEST Algorithm for Finding Hamiltonian Paths in Dirac Graphs and Generalizations