This shows green until the bar is at 50%, yellow until 33%, and red
below that.
This also fixes the bar to show white when "colored" is disabled in the
config.
When I checked this yesterday, my IntelliChem was set to 5/6, but the
module was showing 100%. So maybe the API returns it on a 1-7 scale
instead of a 0-6 scale or something? I don't know. Let's try this.
I'd ultimately like to get this to a nicer UI, but I need some more time to get that work done and/or to find somebody who knows what they're doing better than I do.
Hooked up most of the server-side support for heat setpoint
I decided to continue using the `controls` array and differentiate with a new `type` property. This allows much simpler sorting of controls than trying to figure out a good layout for a mix of circuits, heat modes, and heat points.
Heat point UI is going to require a bit more thinking than the simple toggles of circuit and heat modes, but I wanted to get the current progress committed. I'm also not terribly happy with the terminology I've gone with here, so I expect to iterate on that.
This can be used with a touch screen, for example. I've also stubbed in functionality for controlling lights, heaters, and heat setpoints, but no actual UI exists for anything other than turning circuits on and off for now. That stuff is coming soon.