Modernize mapper core types

There's a number of best practices that have evolved in our use of
flat_maps and flat_sets since this code was originally written.

First, add std::less<> to the Compare template argument.  The default
for this is std::less<Key> which limits find() calls (and any lookup for
that matter) to only supporting std::string.  Using std::less<> allows
lookup by std::string_view, which can prevent some copies in some cases.

Next, add std::vector<...> to the types under the AllocatorOrContainer
template arg.  Per our coding standard, this overrides the default of
using boost::vector, and replaces it with std::vector, which, although
it has a very similar interface, tends to optimize better, and be better
supported overall.

The rest of this patch updates a couple places where the various types
were specifically hardcoded, so it moves to using the various using
declarations.

Tested: Unit tests;  Next patch tests this more fully.

Change-Id: I11e8ecb669f31193c55dda344b25d3fa5d191502
Signed-off-by: Ed Tanous <edtanous@google.com>
diff --git a/src/test/name_change.cpp b/src/test/name_change.cpp
index cd491a5..860a387 100644
--- a/src/test/name_change.cpp
+++ b/src/test/name_change.cpp
@@ -30,8 +30,7 @@
     boost::container::flat_map<std::string, std::string> nameOwners = {
         {":1.99", defaultDbusSvc}};
     std::string oldOwner = {":1.99"};
-    boost::container::flat_set<std::string> assocInterfacesSet = {
-        assocDefsInterface};
+    InterfaceNames assocInterfacesSet = {assocDefsInterface};
 
     // Build up these objects so that an associated interface will match
     // with the associated owner being removed