First - allow me to formally thank you for your efforts on your Ecobee device - you have clearly invested a lot of time working through the various intricacies of Ecobee’s APIs.
And indeed - I have noted that my version of your driver is based on an older version…I have no excuse other than I grew weary of re-adding my changes after each time you updated yours (especially when you/we hit the max-number-of-lines-of-code limits of the ST IDE). My delta is too far removed from your current to even attempt anything but a manual merge.
Where our approaches differ is where we assign control - you have evolved your device to be the primary control point for your Ecobee thermostats, while I have evolved it to keep temperature and climates controlled by the Ecobee itself and its Climates - via both the Web interface and the iPhone application.
Your approach of hard-setting the temperature holds also inhibits the Ecobee from pre-warming/cooling in advance of the scheduled transitions; my approach allows for early transitions to scheduled Climates while still anticipating my scheduled arrival home and/or wakeup time.
Oh, and I prefer a more simplified tile page, with fewer options.
We each choose to utilize our Ecobees differently, no big deal.
One thing you should consider, though, is updating your version to support all of the defined Attributes for a ST thermostat - most notably the thermostatOperatingState attribute and its pre-defined values. This is the standard published for Thermostats, and people are starting to utilize these in SmartApps.