[POC] Add buddy check system

:no_entry: This is an experimental implementation :no_entry: 

/cc @zendesk/samson @jwswj @pswadi-zendesk 

### TODO

- [x] fix old tests
- [ ] add new tests
- [x] add email notification for `bypass`

### RISKS
- still using the confirmation setting on stages to determine whether a stage needs buddy check.
- If this branch gets merged, the measurement of the deployment duration needs to be fixed.
I agree with that.  I will see where the abstraction best fits.