docs: public static void removeRecursive( Object json, String keyToRemove ) {
          if ( ( json == null ) || ( keyToRemove == null ) ) {
              return;
          }
          if ( json instanceof Map ) {
              Map<String, Object> jsonMap = cast(json);
  
              // If this level of the tree has the key we are looking for, remove it
              // Do the lookup instead of just the remove to avoid un-necessarily
              //  dying on ImmutableMaps.
              if ( jsonMap.containsKey( keyToRemove ) ) {
                  jsonMap.remove( keyToRemove );
              }
  
              // regardless, recurse down the tree
              for ( Object value : jsonMap.values() ) {
                  removeRecursive( value, keyToRemove );
              }
          }
          if ( json instanceof List ) {
              for ( Object value : (List) json ) {
                  removeRecursive( value, keyToRemove );
              }
          }
      }