How to Build a CDN: Why Co-location matters