Reduce database queries of DataManager.buildMetadataInfo for many metadata

LuceneSearcher calls DataManager.buildMetadataInfo for each search result. The buildMetadata makes several database queries for each call.  This change modifies buildMetadataInfo so that it takes several metadata ids and builds the info for all of the objects with only a few queries.

Tests indicate that it takes the same time for 1 metadata but 14x faster for 20 metadata and 30x faster for 40 metadata.