1. A method of dynamically predicting routes between a starting geographic location and a destination geographic location, comprising: setting a starting geographic location associated with a mobile communication device; setting a destination geographic location associated with said mobile communication device; generating a plurality of possible routes between said starting geographic location and said destination geographic location; calculating a plurality of possible next geographic locations of said mobile communication device along each of said plurality of possible routes; and iteratively updating said previously generated plurality of possible routes as said mobile communication device traverses at least one of said plurality of possible routes.