split out heuristics into separate method
work on integrating the heuristics back into the results set