I think that it is important to clarify something;
Android is open source.
FULLY open source.
So what that means, is that this "replicant" deal is strictly involved in dealing with the proprietary hardware crap.
You can, in fact, build a fully open source Android for any device AT ALL, for which there are proper device trees and kernel support available. A number of times, we've *accidentally* made working[-ish], FULLY open builds of Android for Samsung Relay.
The problems come when you try to get various proprietary bits of hardware going.
Things like the GPU, which in most cases, does not have open source drivers available (Adreno may be the closest, but I have yet to actually *try* freedreno with Android).
RIL... oooh, there's a nice mess.
Cameras... usually have an open source driver, but without the ability to function correctly or at all without a proprietary HAL.
All of the closed blob bits are not actually part of Android to begin with.
The reality is that Replicant is NOT an Android distribution at all. What it really is, is some source code reverse engineered out of some blobs.
First off, Allwinner devices tend to have halfway useful u-boot and kernel support through linux-sunxi.org. Project like my lima driver, and the related graphics driver REing projects, are working hard to provide a great deal of the rest of what a proper free android device needs. But, as a member of the sunxi community, and as the main lima driver developer, i find it weird that a project with the stated goal of replicant, has absolutely no ties to the communities doing the low level work, and i have only heard about replicant in passing.
Replicant is completely the wrong approach though, from where i sit. Instead of doing real work, like starting to work from the hardware up, why not set up a project to deal with the end goal first, then ask for funding for the overly broad and constantly moving goal, and then wonder why nothing is happening?
From my understanding, you have to look at it like this.
Google releases Fully opensource android. Cyanogenmod picks that up, adds some fluff and makes it lean and awesome. They have devs that support certain devices. These devs usually pull drivers as blobs from stock ROM's or build them from source when available.
Replicant takes the CM work and starts to rip out the blobs and tries to replace it with opensource as much as possible. Firmware for certain devices currently remain untouched.
As for the hardware choice, they try to avoid devices where the baseband modem is unconnected from the main system. This because usually the baseband modem has its own realtime OS running on a dedicated core. This 'os' is the baseband radio firmware. Since we have no control over that we don't want the modem to interact with the memory in any way. The Galaxy S2 and S3 are good in this regard.
Yeap, oliver is right. While Android itself is fully open-source, you can't exactly do much with just that. You need a way to load it on your phone, and you need some common applications, like a package manager. That's what Replicant provides, while not touching anything that is closed-source. There's nothing wrong with that, and it's a nice convenience.