An Exploration of Heuristics Applied to Genetic Algorithms on the Capacitated Pickup and Delivery Problem with Time Windows