More efficient when returning no valid path (empty Queue)
Minor comment changes