walk objects, including inherited members
npm install merlemerle 
=====
poor man's traverse, except merle includes inherited properties.
example
-------
var merle = require('merle');
merle(someObject, function(){
console.log(this.name); // property name of someObject
console.log(this.depth);
console.log(this.value);
console.log(this.path); // the array of property names that got us to this node.
// if you return false the children of this node won't be walked
});