ENH:
#### Is your feature request related to a problem?

Not really, there are ways around (as always).


#### Describe the solution you'd like

Allow `df.pipe()` to accept strings for pd.DataFrame built-in methods . For example, it would be very helpful to simply call
a pipeline as follows:
 `df.pipe(f, arg_1=1).pipe("rank", ascending=True)`

I know I can call explicitly invoke the method

 `df.pipe(f, arg_1=1).rank(ascending=True)`

but this feature could enable a more general usage of pipelines as outlined below:

```
pipes= [
    (fun_1, dict(arg_1=0)),
    (fun_2, dict(arg_1=1)), 
    ("rank", dict(ascending=True))
] 

for fun, kwargs in pipes:
    df = df.pipe(fun, **kwargs)
```


#### API breaking implications

Not sure what to add here. 

#### Describe alternatives you've considered

I can re-write most methods as standalone function but why if the built-in is so reach in features.

#### Additional context

see example above.