I think basing it on STL and perhaps Boost would be fine.I took a superficial look at zeromq 2.x sources: it looks like they don't use much of the stl (beyond vector and some trivial usages of algorithm). I wonder if this is linked ?
FWIW, I would be fine with using such a subset in numpy.