1. A method comprising: estimating a three dimensional trajectory of motion of a mobile device based at least in part on three dimensional sensor measurements performed by at least one sensor at said mobile device; and estimating, by the mobile device, a location of said mobile device based at least in part on a comparison of said estimated three dimensional trajectory with one or more predetermined candidate three dimensional trajectories stored at said mobile device, wherein estimating the location of said mobile device includes: obtaining externally-sourced (ES) position information for said mobile device before the mobile device enters an unfavorable radio-frequency (RF) environment; using said ES position information in the unfavorable RF environment to reduce a number of said one or more predetermined candidate three dimensional trajectories; and storing said ES position information during at least a portion of time when said mobile device is located where said ES position information is not available.