A-GPS, AFAIK, only works, now, over GSM networks that support it.
SkyHookWireless is building up a database of AP's positions and using that to tell you where you are. They already mapped a lot of US and starting mapping the rest of the world (they simply go around taking note of MAC addresses and position or ask people to provide them with that info). Apple merges that information with the google location information (based on the repeater position that Google knows) to come down to an approximate position of circa 20mt (Apple says). That pretty impressive for a device without a GPS chip, isn't it ? So. If there could be a why to use SkyHookWireless SDK with the GPS SDK and feed the GPS chip with "Assisted" data from the SkyHookWireless' database.. we could improve the fix time in those areas. You could add, to that, also the repeater's position provided you've got bluetooth access to the cellphone and there's a small utility that reads the repeater's ID and report it or directly it's location to the tablet. Moreover you could save the positions you have been already AND the "Assisted" data of that location and feed it manually to the tablet (by stating, thru some interface, that you are at a know position) I think this could be done in the GeoClue project. And would be an awesome piece of work.