This smacks of the client not knowing how to use a developer. Meaning: I can imagine they made a simple (probably incomplete) scope or product definition document, didn't realize where the complexity actually lay, found someone cheap, and then realized that no one had the ability to actually shepherd the project to completion. They knew nothing about their developer -- and she or he knew nothing about them. And they weren't paying that much, really. So it wasn't a huge priority in the developer's life. And maybe the dev was young or just kind of between things and something more important came up or whatever. It actually takes some thoughtfulness to be a professional freelancer. Can be harder sometimes than it looks.
Cheap overseas developer talent is fine. But. There's also a huge value to finding people who you can sit down with and talk to. Meet. Get to know a bit. Professional freelancers will absolutely help naive clients identify and avoid pitfalls from the start. We (professional freelancers) have already fallen into them all and generally have the scars and callouses to know what it really takes to produce good software in a freelance environment. Professionals know how much time and effort it actually takes to do things. They'll tell you if your "I need a Facebook clone next week" project has any chance of success. They'll help you with design and they'll help you understand the trade-offs between money, time, and functionality that all software projects must make.
Sounds like none of that happened here.
Anyway. This just touched a nerve for me. Maybe I'm totally off base.