If I understand you correctly you want:
1. A WiFi shield to automatically detect networks within range and then select one to connect to automatically ?
2. Then you want the user to turn on their computer and be able to select the service the Arduino/WiFishield offers ?
1.) that can be down, however, of course this would only work for open networks. And of course you don't know what network your user sits on. Perhaps you need to study the general workings TCP/IP networking a little bit more before giving up on the project. You can run some WiFi shield in AP (Access Point) mode. that way they create their os network the user then can connect to. Or you have it connect to the users existing network. If it's a closed network the Arduino/WiFi shield will have to provide some form of authentication via passphrase/password to be able to log into the network.
2.) Sure, that technology os called ZeroConf with the most prominent implementation being Apple's Bonjour. There are libraries for Arduino that help you do that like DHCP, Bonjour libraries etc.
Having said all that. Nothing happens by itself magically. You'll have to write software to do it
I don't mind writing software
Just to clarify...
I scan the networks in range ONLy to get the names of the nearby wifi base stations.... Then i go into ADHOC mode so that the module will broadcast or advertise itself as a wifi network so that the user can see it in available wifi networks..... He connects to it and go to a webpage to configure which of the available networks wants to use and set a password for it and such....
Nextime the device boots looks for the base station specified by the user and attempts to join it...
That's how i think its simplest for my device to get configured. If i use Bonjour, it assumes the device is connected to the network... Which it is not the first time you boot it..