src: Refactoring common.hpp and minimizing exposed includes

Face class has relatively large rewrite to hide internals using
Implementor pattern.  As of this commit, <boost/asio.hpp> is not
automatically included whenever ndn-cxx/face.hpp is included.  If it is
needed to directly work with io_service, asio.hpp should be specifically
included.

Change-Id: Ie742b851025b4e3da634eb981319df0f42937855
diff --git a/src/exclude.hpp b/src/exclude.hpp
index 2fa939f..d187a1a 100644
--- a/src/exclude.hpp
+++ b/src/exclude.hpp
@@ -17,6 +17,8 @@
 
 #include "name-component.hpp"
 
+#include <map>
+
 namespace ndn {
 
 /**