Some refactoring to enable control to the Gpoi heating and cooling outputs

 Generally works, but 2 tests are failing
 Need to fix control algorithm to make tests pass
 Add more tests around temperature control