Return the viewlist from the update promise so that you can use it immediately.

The pattern is:

viewlist.update(new_list).then(function(new_view_list) {
   ...
})
Do something about do_diff being used for the class stuff in widgets
At least log an error if there is no create or remove defined.

We might just remove this...
Merge branch 'viewlists' of https://github.com/jasongrout/ipython into viewlists
reimplement the add/remove class logic to not use do_diff and remove do_diff