So you start off with a base mesh. Maybe a few. It might be split up into multiple portions (eg, the shoulder mesh, the neck mesh, the head mesh.) Each section might have a variety of "options" (eg. elf, male, female, etc.), alternatives that can be swapped out into the same position. You can think of it much like a seamless texture. As long as all the edges line up exactly, you can do whatever you want in the middle.
Vertex merging/vertex welding/removing duplicate vertices/whatever else it's called, is merging all those parts into one solid mesh/humanoid. You have all those meshes, defined by vertices, whoms edges line up just right so that you don't see any lines between them. What that means is that both part-mesh
a and part-mesh
b both need to have vertex(s) at
p to have a seamless edge. When combining it so you can see it as a whole, you remove the duplicate, so there's only one
p instead of one
p for mesh
a, and one for mesh
b. If that makes any sense.
You can google around for a better explanation.
Shape keys, as explained on Blender Cookie: https://www.youtube.com/watch?v=gDZcmAWL2jA
Programmatically, there are several approaches to this. The simplest is to have a base-mesh, and then accompanying data that has "offsets". You then apply a percentage of that offset to the base-mesh, and it transforms it by that amount. combine multiple offsets, and you can end up with some pretty complicated results. The hardest part is moderation of these different offsets, to prevent unwanted deformities.
So now you have a mesh that gets distorted in all kinds of funny ways. To make it ready for use, you just need to animate it. Give it a skeletal structure. Really, that's just some extra data you tag into your base-mesh.
Aside from that, programmatically, you need moderation. You need to have, coded in, what keys go together, what parts of the mesh go together when, what shape-keys can and can't work with each-other and, if they can, how much they can both be applied before you start having problems. I'll also add onto that, different sets of shape-keys (male shape-key, female shape-key, lizard shape-key, etc.)
If you aim for a make-human like feature, the hardest part (I expect), would be the sheer amount of data for the shape-keys + base-meshes + animations. To get to something anywhere close to make-humans level requires sheer data. Particularly on the shape-key part.