Ok let me throw this in there so you all understand something about GPS and AGPS. On my old Tilt it could take me up to 5 min sometimes to get a fix. this is due to the fact that it was a GPS phone, which means it doesn't get any "data" from the cell towers. I could load up programs that downloaded data from the internet and then injects it into the GPS driver to help the GPS receiver find the satellites quicker.
Now with AGPS the GPS device on the phone will poll the towers around you to get the very same data that the program I had loaded on my old phone delivered. This will allow the phones GPS to lock onto the towers faster as the GPS now knows where to look for the sats. Each tower is loaded with it's own data depending on it's location, this allows a very small amount of info to be transmitted since the GPS only needs info for the current location.
Now turn off your GPS on your phone and you are now running "triangulation PS" or TPS. All this does is use two items from each tower around you. The towers tell the phone their GPS positions so the phone can find that on a map and then use a signal calculation table built into the tower to figure out the approximate distance to the tower depending on how strong the signal is. The more towers that report to the phone the more accurate your position, BUT this method is extremely unreliable for exact positions cause there are so many factors that can mess with the signal. There are objects blocking signals/reducing signals and also bouncing signals. Also sun spots and atmospheric conditions can cause issues, including rain, fog, and yes heat radiation from objects around you. So as you can see without GPS on the TPS is very inaccurate, but you will know the general area that you are in.
Now add WIFI to that and the map program you are using will had an online database to poll local WIFI hotspots, but this is so unreliable and extremely unreliable that you should never use it, instead climb on top of a build and use google maps to try and find your location
but don't fall and if you do, then I'm not responsible.
there that is a basic dumbed down version of how it all works. Hope that helps.
Also I geocache all the time and have found that my Nexus One is more accurate then my old Tilt, and also my old Tilt didn't like to update once I stopped. But my Nexus One gets me withing 7 feet in the woods!! I have found more caches with my N1 then I ever could with my old Tilt.