He wrote the start, with a ending in mind (that he still wants to reach), and he was supposed to write three books.
The problem is that when he ended the first book, the story had not advanced enough already.
Then when he ended the second book, the story had not advanced enough AND he created lots of unplanned characters and stuff.
When he tried writing the third book, he decided to "hack", or rather have a five year timeskip.
Except he noticed that all the new unplanned characters and stuff introduced meant he would have to figure what everyone did during the timeskip... And he could not, because they were unplanned in first place, and he could not figure how to write toward the ending without plot holes.
So he decided to not do a timeskip.
The result was that the book he was outlining as the third book now started to look like a ridiculous humongous tome, so he decided to divice the third book in two books that happen in parallel.
Those two books are relased, and now he promised everyone that in the next two books he will tie up plot points and characters, not open more... Let's see if he can resist the urge of the feature and scope creep :P (well, as a coder I can say that resisting the urge to finish features and fix bugs before making another yet cool shiny feature is something kinda hard :P)
On the other hand, isn't George RR Martin a bit slow on writing the series ? I don't read the books but many friends complain about that =)