How GeoBlood matches blood donors in real time: MongoDB 2dsphere indexes, $geoNear vs $geoWithin, staged radius expansion, and donor location privacy.