The Galaxy Nexus.
It’s the official developer phone from Google, which means it runs completely crap and bloatware free Android 4.0 (currently 4.04.) It gets the timeliest upgrades, since the newest upgrades are coded for this device, and manufacturers and carriers then have to modify the code for their own, branded, devices.
It has an unlocked bootloader, is super easy to root and run a custom ROM on, if that’s your thing.
The only part that doesn’t meat your requirements is the hardware extensibility. It does not have an mSD card slot, it has a fixed 16 GB.* And there aren’t any Android phones that have the ability to add a wide variety of peripherals. At most, you’ll find a few that have a micro HDMI port for outputting to a display, though often times the video you’re watching won’t let you port it because of DRM, so what’s the point?
It’s factory unlocked, and has a pentaband GSM radio, so it will work damn near anywhere in the world. It’s compatible with both AT&T and T-Mobile, for contracts or pre-paid plans, and with other pre-paids like StraightTalk or Boost (though not Virgin Mobile, they use CDMA.) It has Bluetooth 4.0, and an NFC chip, so you can use it to pay for things with Google Wallet, and set up RFID tags that can be programmed and swiped to do damn near anything on the phone. (I saw a blog post where a user has a few tags for home, work, and car. When he swiped them, it wold change things like volume settings, ringtones, alarms, wifi on/off, GPS on/off, etc… on one easy step, rather than going through manually to do it.)
Honestly, it’s the best Android phone out there, and is the closest you’ll get to your requirements. Ones that have an mSD card for more storage aren’t dev phones, so there can (will) be crapware/bloatware, and unlikely to be unlocked. Though some of them are still very moddable, software wise, so you can at least root them, put on a custom ROM, and remove the bloatware if you want. But there will still be some “things” left on the phone you may never be able to get rid of, or performance issues, etc…
Get a Galaxy Nexus.
*The reason they didn’t include an mSD card slot is because of the transition to how the filesystem works. With an mSD card that can be “mounted” on your PC like a regular flash drive, you have to have separate application space and storage space, that way, an app doesn’t try to access data that becomes “off limits” to it on the mSD card when it’s mounted on the PC. With the new combined system, the phone connects to your PC with MTP (Media Transfer Protocol,) which allows the PC and phone to “share” the storage space at the same time, so you don’t have to worry about something trying to access data it can’t get at.