ENH: Cumsum with reset after certain upper/lower boundary is reached. 
A cool new feature would be to have a reset value as an argument in the `cumsum` method. So for example if the cumsum value reaches the _lower_ boundary of 0, it resets to 0. Here's an example stolen from [this](https://stackoverflow.com/questions/57510604/perfrom-cumulative-sum-over-a-column-but-reset-to-0-if-sum-become-negative-in-pa/57511154?noredirect=1#comment101490704_57511154) question:

```
df = pd.DataFrame({'Item':'A',
                   'Value':[7,2,-6,-70,8,0]})

  Item  Value
0    A      7
1    A      2
2    A     -6
3    A    -70
4    A      8
5    A      0
```
**Expected output**
```
[7, 9, 3, 0, 8, 8]
```
As you can see, the cumsum restes after it hits `0` or less.

There are some solutions on SO right: 
- [Solution 1](https://stackoverflow.com/a/57511154/9081267)
- [Solution 2](https://stackoverflow.com/a/56905635/9081267) (note: different question, but same problem)
- [Solution 3](https://stackoverflow.com/a/56904650/9081267) (note: different question, but same problem)

I think this would be a nice improvement to the `cumsum` method as an argument for example:
```
df['Value'].cumsum(lower_boundary=0)
```
Somewhat the same as `np.clip` does with the `a_min` and `a_max` arguments.