Keith, I'm looking into this. This is all doable, but maybe not trivial. It is VS extensibility stuff. It is pretty easy if you have a collection and will just add items to the collection, in which case, VS will just handle it. But you want to show a list of existing items, with a checkboxes next to them. This is custom stuff, i.e. you'll have to build a form to show this and then setup it up to be a Modal Type editor. Typically, this is done via the following steps:
1. Build a class that inherites UITypeEditor. This class gets called by the designer and will open a dialog you build. The current value (collection in this case) gets passed in, you manipulate it via the dialog, then return the modified version.
2. Build a dialog to show the collection. I'm not sure how you get the list of possible items, which comes from the BO...but it must be possible!
3. Add an attribute to the property of the BO to indicate is should use the type editor created in one.
Hopefully this will get you started. When I get a moment, I'll do some more digging.