widget_selection update

Fix for the fact that dictionary randomization sometimes switches the order of the arguments passed to the class on initialization.  This means that, potentially, 'value' can be updated BEFORE 'values', and since the method to update 'value' checks to see whether it exists in 'values', this breaks things.