It's not as if erratic power usage is a new thing, anyway. My 2013 MPB's battery life can easily vary by an order of magnitude. It'll last 10+ hours if it's sitting there not doing much, or maybe an hour with an intense 3D game. The estimate they provided up to 10.12.1 was still quite good if I was doing the same thing for a while, which I usually am.
- Compute discharge rates for one minute segments, like Ted did in this post
- Store the last 10 discharge rates
- Report a time estimate based on the minimum/median/maximum of those 10 rates.
That gives fairly quick feedback after you start doing something expensive, but isolates the effect of short-lived and infrequent bursts.