The Virtual Earth and Yahoo Maps support was quite easy to add since the tile system is very similar to Google Maps.
The address search menu uses the Google Maps API.
You can now setup PSP-Maps to have a very big cache.
And you can use the "load neighborhood" option to load the tiles around the current position in the cache, with a large radius (useful to generate a map for offline usage).