I've got an Android phone with, currently, no phone service. Well, OK, it's a WinMo phone chainloading Android, but that's relatively irrelevant. Soon I will want to avoid using minutes from my incoming T-Mo PAYG phone card, so I'll still want to make phone calls using SIP any time I'm in WiFi range. You can even get out of paying for outgoing calls so long as you turn them into incoming calls.
At the end of this process you will have two new phone numbers; one from Google Voice and one from IPKALL. IPKALL will reclaim the phone number if you don't use it regularly, so make sure to call it every so often or you'll have to do the IPKALL part again. First you sign up for the free SIP address, e.g. from getonsip. Then you use those credentials both to configure your client2 and to sign up for the IPKALL number. Then you sign up for Google Voice and enter the number from IPKALL as the phone number. Google may call you to verify it, and if your client is properly configured then you should receive the call and then you can enter the two-digit number they provide to you on your keypad.
If all of this goes smoothly, there are no additional steps. People can call either number, but the Google Voice number has your voicemail. To make calls, visit Google Voice (they have an adequate mobile site which works fine) and use the "Quick Call" feature. Your phone will ring, then Google will attempt to ring your party. Google provides free calling within the USA to users within the USA, and apparently pretty good international rates.
You can shortcut all of this by actually paying a SIP provider, who will then give you not just an address but also a phone number. You can then make outgoing SIP calls through this provider at whatever rates they offer.