Move the update listing to a colander schema

This really does make lots of the code simpler and nicer, I really should have done that from the start. :)