feat(wants): rely on buy-reason-id list rather than product-id for wants

Since an instance of a widget is 'stateless' in that we can't identify
one instance of a wants widget from another, a decision was made to use
buy-reason-id-list for widget rendering and behavior, whereas the
widget-syndication page uses add/remove buttons to actually save
the buy-reasons to the database. This is a mismatch that we agreed
to resolve later. For now, the widget-syndication uses add to
add reasons to database, remove to hide it from the UI and
the buy-reason-id list is exclusively used for widget's runtime
behavior.