There are two types of busy tones:
A slow one which indicates that the person you called is busy and a fast one which indicates that all available paths to the number you are calling are busy.
Think of the phone system as a tree network.
Each little stem is a phone number. To connect a phone call, you would find a path from your stem to the trunk (the phone company). Then you find a path to another stem. If it's in the same neighborhood, it'll be on your side of the double-tree thing. Each branch can only support a limited number of calls. Sometimes, this branch can hold fewer calls than numbers. It it's full, you'll get a fast busy tone.
Now, you ask, the friend lives across the street but it's still getting a "trunk busy" tone. What gives?
You live across the street, but magicjack's phone number lives on the other side of town. When you dial a number, it's like skyping into that phone across town and dialing the friend across the street. magicjack uses voice over ip with a DID (virtual phone number). In a given area code, these numbers all live at the same place (inside the phone company's office).
Let's say the phone company is provisioned for 50 of these virtual lines. If you have up to 50 magicjack (or skype, vonage, etc) users in this area code, you're golden. If you have 75, you're still golden as long as no more then 50 are using it at one time. The 51st person to use it will get a "trunk busy" tone or "all circuits are busy" message.
You can usually tell where a phone number is by it's prefix. (The first three numbers after the area code.) Change your number and the problem will go away. (Probably.)