The PokeStops and Gym locations are directly from the game Ingress, which was also developed by Niantic. For some reason, Pokemon spawning is also centralised around these areas. So if there weren't any Ingress portals in your area, you get no Pokemon. You used to be able to submit portal locations to Ingress, but they couldn't handle all the requests, so they stopped accepting them.
Hopefully they will change this for Pokemon Go. I live in a capital city now, so I expect to have a better situation. But I used to live in the middle of nowhere, and it would have been a huge bummer not to be able to play this game.
Here's someone's picture of playing in a rural area.
