FYI, one additional limitation of Google Voice (yes, it works over WiFi) is that can neither send nor receive MMS.
Which means that if you text using your GV number, you have to hope your friends and relatives will be able remember that they can only MMS you using your cell #, but not your GV #. They won't get a notification that an MMS sent to your GV number got silently dropped, and neither will you.
Looks like Hangouts is supposed to do both
(although I haven't used it yet)
but YMMV may vary depending on country. (Same goes with GV too I would presume).
"I'm gonna start coding placebo apps. That way I will be sure that the complaints are real and the praises hollow."