code: function finddeep(forms, predicatefn, pos) {
    pos = pos || 0;
    if(Array.isArray(forms)) {
      for (var i = 0, value; i < forms.length; i++) {
        value = finddeep(forms[i], predicatefn, i);
        if(value) {
          return value;
        }
      }
      return undefined;
    }
    else {
      if(predicatefn(forms, pos)) {
        return forms;
      }
    }
    return undefined;
  }
docs: Find the first form in the forms tree where predicate returns true.
  predicatefn is a function of the form:
  function(form, pos) {
  return true if found otherwise false
  }
  
  form is a single form from the forms tree
  pos is the position of that form in it's parent list
  
  note: this is a depth first tree walk - this corresponds to the natural
  left-to-right/top-to-bottom order of the original source