Actually, there are less than 4.3 billion public ip addresses available. Take out the whole ranges of 10.0.0.0, 127.0.0.0, 172.16.0.0, and 192.168.0.0 to get your number. And of course there are dozens of class A subnets that are reserved by iana and don't forget that large companies buy whole blocks of ip addresses and don't use them right away.
According to the iana website, there are only 7 class A ranges left unallocated. Once those are bought up, the big move to ipv6 will happen. Even though all the ip assignments aren't being currently used, once, they're assigned to someone, they're taken.