**New Dependencies**
* `freezegun==1.1.0` - only for tests; allows mocking a date for testing functions that use datetime
**New Features**
This change introduces two new methods for all devices, get_runtime_day and get_runtime_month.
With get_runtime_day, you will see all runtimes in minutes for the specified year and month (where data is available) and can use that to look at the current day's runtime since the current value is contained in that list under the current year, month, day.
Daily averages and total runtimes as seen in the Kasa app can be calculated based on the raw data.
For example, total runtime for the past 7 days would be calculated by summing time for each day starting from the previous day (not today) through 7 days before that and dividing by 60 to get a value in hours. Daily Average over that period would simply be that value divided by 7.
For the past 30 day's values, follow the same method but sum all of the time data available from the current month (excluding the current day) as well as the previous month (at most 30 days of data in total across months is retained by TP-Link and that includes the current day). Take the summed value and divide by 60 to convert the units to hours and that will be the Total Runtime as seen in the app. For the Daily Average of the past 30 days, divide by 29 instead of 30 and you should see the same value as the app (though the app either rounds or truncates the value to 1 decimal place).