Some paydrivers do not require a billing address (Cash and Paypal). The cart should not ask for an address when the user can only choose from paydrivers who do not require an address.
This means that the paydriver should get an extra method like needAddress(); so the cart can determine wether to ask for a billing address or not.