Just as with wifi networks, being able to see nearby Bluetooth devices is enough to figure out your location using publicly available databases like WiGLE.
Good point, and I assume this is why Google has taken this approach. That said, the more location data points you have, the more accurate the location (larger sample size, time proximity data - GPS is accurate always, SSID/BSSIDs can be out of date.
There is a huge difference from that to a device syscall getCurrentGPSLatLon() but I can see why Google would want to make their permission system as abtuse as possible