I use
www.kall8.com and I *love* them!
Basically with this service, I get an 800 number for about $5 a month and then pay 7 cents per minute.
This per minute rate is almost the same as my long distance plan, so it doesn't matter whether they call me or I call them.
I can go into their website anytime, and change the telephone number that the calls ring into - I can even tell it to ring my home until 9am every day, and then ring my cell until noon, and then ring my office from noon to 3pm and then ring my home after that - if I had a regular schedule like that... you get the idea. It's incredibly versatile.
Check out their website at
www.kall8.com for a full feature list.