The only time I got the "Write Failed: broken pipe" message was when I was trying to install phonenumbers-7.0.2 as part of django_twilio. It always happens at the same place:
Running phonenumbers-7.0.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-ZXIZhT/phonenumbers-7.0.2/egg-dist-tmp-TG76Zf
warning: no files found matching 'MANIFEST'
warning: no previously-included files found matching '.*ignore'
Write failed: Broken pipe
where the "warning: no previously-included files found matching '.*ignore'" message sits for quite a while without any activity before the "Write failed: Broken pipe" message is raised.
This is a classic case where giving full information and posting the entire error message is very helpful.
Previously, you stated you were getting a broken pipe message. In reality, I think the problem is the warning messages that appear before the broken pipe message. That process failed, and went away. The inter-process pipe was left open, and it eventually timed out. I think the broken pipe message is not the error, it is the end-result of the error.
The real problem is that installing phonenumbers failed, and the django_twillio installer didn't know how to deal with that failure, so it finally failed in a non-graceful manner. (Or something along those lines -- the key is what happened just before the broken pipe.)
It's the cause and effect: it's like saying that you were on the phone with your girlfriend, and the line went dead. It's hard to tell why. But then hearing the rest of the story that just before that you said she was an ugly witch, and then she screamed at you, it's pretty easy to figure out that the line went dead because she hung up on you! ;)