begin implementing excess power chart
Seems functional, but slow
prep for merge
bring in some minor things from the excess power branch