A while ago I used to play a game called Midnite Challenge, a credit based multiplayer powered by PHP. Unless your life revolved around the game or you spent a great deal of money you wouldn't do well. The reason being, you were given credits every 10 minutes, and there was a limit as to how many one could have at any given time. Needless to say this limit was met every 8 hours, in other words, while you slept. An old friend of mine developed a desktop application in C++ that could:

1) Log out when someone else logs in (There was a list of those who were online, you gave the application a list of usernames and it compared them against said list.).
2) Effectively manage credits (Say the limit was 1,000 credits, and you'd like to have 800 when you returned. Once 800 had built up it would begin to use them.).
3) Display random statistics in the application (Such as what the application had done for your recently, how many credits you've got now, what proxy it was hiding behind.).
4) Bypass "Captcha" image verification (Compared the current image to a number of images that were known to complicate things.).

My question is, is Ruby suited for something like this? I know that Ruby can send post data and keep track of cookies, eliminating numbers 1 and 2. I've never dealt with it personally, but I would imagine that the Ruby TK could take care of number 3. Number 4 is what I'm really concerned with, I've spend the last hour searching Google with no luck, surely there has to be a way. Maybe there isn't, is something this complex limited to the likes of C++, Java, and dare I say it, Python?

Anyways, any insight would be appreciated, thanks!