Since we are counting things, this seemed a little suspicious to me:
pramsey=# select ST_NumGeometries('POINT(0 0)');
st_numgeometries
------------------
1
(1 row)
pramsey=# select st_numgeometries('POINT EMPTY');
st_numgeometries
------------------
0
(1 row)
Hmmmmmm,
P