Resolving the worst-User bottleneck of coded caching: Exploiting finite file sizes