added some more metaprogram stuff (type vector, function traits, etc).  added a unit test for the new stuff.