GLRIDB-414 refactor and merge search with browse while making browse first class

Ah, ok, so there isn’t currently much here in the RecordManager.
As a start, I’d suggest we move all of the loading code to here.  Callers would pass in a status object that they could monitor.  When a call is complete, the resulting list would be detached from the RecordMangers internal state so that the called can modify its list w/o affecting the RM.

Future versions of the RecordManager could do smart things, like pre-load, caching, etc.