In my opinion, the Fairy type was mainly implemented to fix the balancing issues with the Dragon and Fighting types. If you check the type chart, it is resistant to fighting and immune to dragon, more or less evening out the metagame (since fighting and dragon types were the most powerful and most used Pokemon types in other gens). It also gave other weaker Pokemon types a chance, as Fairy is weak to Steel, along with the type infamously known for it's pathetically low number of type advantages - Poison.
However I was really pissed off when it was confirmed that Fairy was super-effective against dark types. Seriously GameFreak? The dark types had it hard enough, and now some of my favourite Pokemon (such as Hydreigon and Scrafty) have a 4x weakness to fairy. GRRRRRRRR!
I'm guessing it's true that GameFreak, like you mentioned, implemented the Fairy type to give a weakness to Sableye and Spiritomb, I find this to be the most likely reason for Fairy being super-effective against Dark. But I believe it was an ignorant decision on GameFreak's be halve, since the two said Pokemon were useful because of their lack of any weaknesses, adding a weakness destroyed their novelty.
Sorry for the long post! I always write so much!