Here's my current Affinity list:
// Lands
4 Seat of the Synod
4 Vault of Whispers
4 Darksteel Citadel
3 Ancient Tomb
// Creatures
4 Memnite
4 Ornithopter
4 Vault Skirge
3 Phyrexian Revoker
4 Arcbound Ravager
4 Etched Champion
// Spells
4 Chalice of the Void
4 Mox Opal
4 Springleaf Drum
4 Cranial Plating
4 Thoughtcast
2 Tezzeret, Agent of Bolas
// Sideboard
SB: 1 Phyrexian Revoker
SB: 4 Ethersworn Canonist
SB: 2 Tormod's Crypt
SB: 4 Oblivion Ring
SB: 4 Whipflare
So I'm running 23 creatures, that's acceptable I guess.
Note that I'm not on a "swarm plan" but more on an "alpha strike plan", where Champion and Ravager become more important then Pest and MoE.
Basically, my list plays Revoker in place of Pests, and prefers Ravager to MoE. The rest of the maindeck is pretty standard.
I prefer to have some control element on my opponent instead of simply going "all in", which is a tactic I never liked on any deck (that's why I could never play something like Belcher for example). The deck stays very fast even without Pests or MoE and a turn 4 (or even 3, but that's very rare) kill has more or less the same probability to happen.
Revoker is good/great in almost any matchup except Canadian, so I'm happy I play a 3-of maindeck. Of course I prefer them over Needle 'cause, even if they are more vulnerable (but in a world of Decays every cheap permanent seems vulnerable as well), they also provide a body, which is crucial in a deck with Plating.
The main issue maindeck is the n° of Tezzerets, because sometimes I feel like I wanted the third copy...
...but maybe 2 is just the right number: they are pretty clunky, you never want to see 2 in your starting hand, and imho the best scenario is drawing them after a couple of turns, when your opponent has already used most of his defensive resources trying to slow you down: for that scenario to happen as often as possible, I think playing 2 copies is the best choice.
If I had to play 3 copies, I'll probably cut a Springleaf or a Memnite, I don't know for sure.
However, I have to say I change up my Affinity list quite often, so it's not like I consider this version as definitive.