Starting with current frodo version fron xbmc-scripts.
Tweak STATUS index to remove string duplication.
Get rid of trailing whitespace and space-tab indents.
Use old total when clearing old window properties.
Fix some path variables.
The stock thetvdbapi.py file for me to tweak.
Add self.get_updates(callback, period).

I need both series and episode updates, so I wrote a new method that
returns all update info at once: get_updates().  It avoids a bug in
get_updated_shows() (which returns a bunch of None elements from the
nested Series data in Episode and Banner records).  It also makes the
update time available (via the "time" attr).  Finally, it changes the
URL used for all get_update*() functions to fetch the zip-file version,
for reduced transfer sizes.  As for speed, when I processed a week's
worth of updates, the runtime for my script went down to 0.5 seconds
from 1 second (compared to a non-expat functiom I was working on that
returned both episode and series data via the ET method that the other
functions use).
Add "atleast = 1" arg to get_show_and_episodes().

In my use of get_show_and_episodes() I only need newer episodes to be
returned, so I added an arg to get_show_and_episodes() that allows a
DB ID to be specified (it defaults to 1 for backward compatibility).
Specifying this value will stop the routine from returning any episode
objects with a DB ID lower than the atleast request (avoiding a bunch
of episode instantiations for older episodes).
Added self.last_updated_utime to Episode and Show.

For tasks such as comparing update times against the last_update value,
it's easiest to use a raw epoch-seconds value for last_updated.  In
order to avoid needing to try to convert the datetime value back into
unix time (and possibly getting a localtime epoch instead), I stashed
the raw int value in self.last_updated_utime (leaving self.last_updated
as it was).
Switch to the thedvdb with various improvements.

This version of Next Aired grabs its data from TheTVDB.com.  This
provides quicker updates, both because we make use of the the update zip
files and because the API seems much faster than the one being used at
tvrage.  This also provides more future-episode information, which we
use to create a better 7-day calendar view.

The settings have changed to specify how often (in hours) background
updates occur (the default is every 12 hours).  There is also a setting
for how many minutes to wait between interactive updates (by default we
update when when entering the guide if at least 10 minutes have gone by
since the last update).  Since updates usually take a few seconds (and
are pretty small) the frequent updates should be fine.

The GUI now includes separate episode info for each show that appears
multiple times in the upcoming week (rather than showing the same next-
episode info for each one).

The WINDOW properties that are set are the same as before.  Only the
Classification is not available (I was able to get the Country info by
looking up the show's TV station).

The data saved is in a new format in a file named next.aired.db (old
filenames from prior versions are cleaned out).  Some simple locking
has been put in place in order to prevent the gui process from starting
a second update pass when the background process is doing an update (the
gui proc will display the background proc's progress while waiting for
it to complete).

We require a tweaked version of thetvdbapi.py file, which was committed
prior to this change.  When the shared version is updated to have the
new features, we can remove our local copy.
Tweak NextDate/LatestDate format to be more friendly.