code: function hasPath (obj, ks) {
        if (typeof ks == "string") ks = ks.split(".");
  
        var numKeys = ks.length;
  
        if (obj == null && numKeys > 0) return false;
  
        if (!(ks[0] in obj)) return false;
  
        if (numKeys === 1) return true;
  
        return hasPath(obj[_.first(ks)], _.rest(ks));
      }
docs: Returns a boolean indicating whether there is a property at the path described by the keys given