Training Language Models to Generate Text with Citations via Fine-grained Rewards