I think changing widgets is a bit too much, There is no need to do that as widgets has nothing to do with a class and that information should be stored elsewhere in the database.

Although changing equipment would be good, its not nesassary, as you may not have all gear on you all the time when changing class, gear change can be done in a macro imo