Channel renewal is no longer a concept. Channels will automatically
expire after they have been inactive for a set amount of time,
regardless of the channel's age. This greatly simplifies things.
This was the product of having worked on it on and off with no clear
schedule or plan. It is structurally... pretty bad. And prone to bugs.
Its core features are known to work. Other features may be added later
as necessary. Don't consider this to be a largely finished module.
This may even be rewritten in the near future, now that I know better
what I want to get out of this.