I was going to do this (I don't have a texting plan at all), and with push notifications, it's really like receiving texts (unlike before 3.0, when I would have had to check the app to see if I got any messages). I tested this out with a friend who has texting on his iPhone, though, and we realized that while the process is unified and seamless for me, it's not so much for the person receiving your messages.
Every time you send a new text (even responding in the same conversation thread, to the same person, within the app), TextFree (at least the free one, which is what I was testing) sends it from a different number/code. This presents two problems. For iPhone users, they don't have a unified chat window, which is annoying. Secondly, they can't add the code your messages are coming from to your contact listing, because it keeps changing. All of this means that you need to initiate any texting interaction, before they can send one to you -- and to answer the poster below me, it doesn't come from your number, it comes from a code generated from the app (something like 2012001).
I bought BeeJive yesterday, and so far, have been loving it (the UI, overall, is great, and it's a lot faster to load than TextFree). I haven't tested out these issues to see if they're the same IMing from AIM via BeeJive, especially since that friend with the iPhone just got AIM with Push, and we've been talking through that. From what I've heard, though, SMSing via AIM is better for the recipient (though still not perfect) than through a program like TextFree.
Hope this helps,
Sojourn