Weirdly enough, I'm working on a similar system for position tracking in canyons. It's hybrid, uses a combination of Kalman filters, particle filters and GPS (EDIT: and LIDAR based DEM) and is based on the obvious (in hindsight) realisation that the view of the sky to get an accurate gps fix is inversely proportional to the constraints of the terrain. If you have a low field of view of the sky, you can use sensor data to constrain your likely position. I should have hardware samples for testing in the next month or so. Hopefully my theory stands up!