Binding Sources for Selectors

Component Selectors now use binding sources to refresh selectors to
avoid unnecessary add/remove cycle when needing to refresh.