But there aren't enough fields for all the parts of the address for non-usa addresses
Take this address:
123 Apple Lane
Ilford
Essex, IG3 8QN
London, United Kingdom
See below I try to add it in, but I ran out of room for the word "LONDON".

On most carts, the State is also labeled "State/Province" and that's where LONDON would go. Where would customers put London in this case? It wouldn't be inherently obvious if they were supposed to put it in the City line: "Essex, London" I don't think.