Wireless coded caching with shared caches can overcome the near-far bottleneck