Batteries are still the most expensive part of a car.
A smaller lighter car doesn't need as a large a pack to go the same distance as a heavier car. That was BMW's strategy. But the i3 is still pricey.
If battery prices fall a bit, Tesla may be able to pull it off if they make an all aluminium car about the size of a 3 series.