The old battery capacity estimate code uses a linear approximation to estimate the remaining battery capacity. This is computationally very efficient, however, the estimate is very inaccurate once below 60%.
This change uses a small table of bounded functions to provide a more accurate estimate of remaining capacity. The values in the table re-implement the old estimation "curve".