Register a struct instead of a function.

Now we have the ability to (de)serialize a string with a source name and
look up the source and USE it for updating, for example, episode
information.