Spatio-temporal Prediction of Fine-Grained Origin-Destination Matrices with Applications in Ridesharing