src: Avoid use of `detail` folder for installable headers

This commit moves `lp/detail/*` to `lp/`, as `detail` folders should
include only private APIs that are only used during the build and cannot
be used (header files not installed) by external applications.

Change-Id: I370592819c4bc5f4016689ef7c9c5bd2cdd0eaa2
diff --git a/src/lp/packet.cpp b/src/lp/packet.cpp
index c17f1bd..751faa6 100644
--- a/src/lp/packet.cpp
+++ b/src/lp/packet.cpp
@@ -20,7 +20,7 @@
  */
 
 #include "packet.hpp"
-#include "detail/field-info.hpp"
+#include "field-info.hpp"
 
 #include <boost/range/adaptor/reversed.hpp>
 
@@ -104,9 +104,9 @@
   wire.parse();
 
   bool isFirst = true;
-  detail::FieldInfo prev;
+  FieldInfo prev;
   for (const Block& element : wire.elements()) {
-    detail::FieldInfo info(element.type());
+    FieldInfo info(element.type());
 
     if (!info.isRecognized && !info.canIgnore) {
       BOOST_THROW_EXCEPTION(Error("unrecognized field " + to_string(element.type()) + " cannot be ignored"));
@@ -117,7 +117,7 @@
         BOOST_THROW_EXCEPTION(Error("non-repeatable field " + to_string(element.type()) + " cannot be repeated"));
       }
 
-      else if (info.tlvType != prev.tlvType && !detail::compareFieldSortOrder(prev, info)) {
+      else if (info.tlvType != prev.tlvType && !compareFieldSortOrder(prev, info)) {
         BOOST_THROW_EXCEPTION(Error("fields are not in correct sort order"));
       }
     }
@@ -132,9 +132,9 @@
 bool
 Packet::comparePos(uint64_t first, const Block& second)
 {
-  detail::FieldInfo firstInfo(first);
-  detail::FieldInfo secondInfo(second.type());
-  return detail::compareFieldSortOrder(firstInfo, secondInfo);
+  FieldInfo firstInfo(first);
+  FieldInfo secondInfo(second.type());
+  return compareFieldSortOrder(firstInfo, secondInfo);
 }
 
 } // namespace lp