But yes, you are right that this assumes the future existence of far better batteries than we have today.
However that is more reasonable than you might think. It turns out that Moore's law is not an isolated example. Most technologies that have an obvious metric to be measured by show exponential improvement on that metric over fairly long periods of time. The exponents tend to be smaller than in Moore's law, but they are there.
The 2020 estimate was achieved by looking at the performance of batteries in 1997, and looking at the apparent rate of improvement in energy density and discharge capacity. Given the minimum requirements for a US car (sufficient acceleration to get onto an Interstate, good enough braking for emergencies, able to drive at least 100 miles before refueling), battery technology won't be good enough until around 2020.
So sure. Batteries are not good enough today. Have not been good enough for the last 30 years. And won't be for many years to come. But unless batteries stop improving, they will eventually become good enough.
In fact a clear sign of how much batteries have improved is the viability of hybrid cars. We could have built hybrid cars a decade ago. But there was no point - batteries weren't good enough for you to get enough out of the complexity to be worthwhile. Today they are good enough.
And to answer the common objection of whether electric is better than gasoline, just look at the mileage that hybrids get. Electric has a huge advantage over gasoline - you get to recover a lot of energy in normal driving conditions. That's why hybrids get better mileage than gasoline. And pure electric has several advantages over hybrids. They have a simpler design, lighter engine, are more efficient and more reliable. (All of these things come from not having 2 engines with complex subsystems to switch between them as needed.)
There is no question that, if you could build a good enough electric car, it would be better than what we have. The technical problem is that today you can't build that car because batteries aren't good enough. The business problem is that when electric cars are barely good enough, traditional car manufacturers won't know how to market and sell them. And by the time they are really good enough, traditional car manufacturers will be facing entrenched competitors whose pricing structure is much leaner.
Cheers,
Ben