So all this bickering about the payment system really reminds me of some of the traps software development houses fall into.
We call it the "squeaky wheel" problem. The wheel that squeaks the loudest gets the most attention. This has a good side and a bad side to it. The good side is the client (or function of the software) gets attention it needs. It clearly wouldn't be squeaking if everything was running fine. The bad side is that it can happen at the cost of ignoring other client's complaints or other bugs in the program. During the 1 year free trial no one was complaining about the payment system. The wheel wasn't squeaking so it didn't get the attention. Now this problem crops up more often from smaller dev houses than it does larger ones, but it's still an issue and it stems from (dare I say) poor management of the product. I understand SE is a huge multi-million dollar company but all it takes is some lazy product managers who don't have the foresight to deal with potential problems like these at the expense of current ones. Yes, this means I'm placing the blame on SE for the billing issues.
So for this 16-month period the complaints were about the gameplay, the story, the graphics engine, the user interface, the lag, etc... I don't think people were complaining about "hey I can't add Crysta during the indefinite free trial!" The billing wheel wasn't squeaking.
Now with that said, I can actually see it taking ~ 1 year to develop and implement an in-house billing system that is capable of handling payments from several different types of card services in several countries as well as other services (such as PayPal and those prepaid cards) for literally millions of (potential) users while conforming to laws in Europe, America, and Japan with zero chance of incorrect billed amounts, duplicate payments, and billing incorrect accounts granting the ability to set up a payment method or cancel one easily over a web interface that is free of bugs. It takes time to gather requirements, plan, allocate work time to developers, QA test, user acceptance test, and deploy an entirely new system. Again I'm not defending SE as this should've been taken care of at LAUNCH but since it didn't - and they want to make it better - this doesn't sound unreasonable.