NeedleBench: Can LLMs Do Retrieval and Reasoning in 1 Million Context Window?