- handle n-to-1 updates: mostly need to allow for a list of replaced packages. The tricky part is that the replaced packages will often have inter-dependencies, and we must ignore those inter-dependencies. - clean up the interface of the dependencies module, to be able to use it in n-to-1 updates. - in interactive mode, make it ask questions whenever the user could get frustrated. - finish pulling the pkg_add code into Add.pm/Update.pm. - figure out when to continue after some errors, which should not stop a full update, for instance... or ignore already installed packages. - make sure all user-interface is done through a few functions, so that it's easy to plug another interface in. - add needed annotations to handle updates correctly.