Are you planning those types of improvements to the BrowseDialog in the future?
It would be a pretty safe bet...I need that functionality as we speak 
Also, Am I correct in assuming that the BrowseDialog cannot be used to return a value either?
It is not designed to return a single value. However, if you have this need, just create a "temp" BO and attach it as the BusinessObjectToPopulate. When returned, you can code your logic to emulate the return of a single value.