model: (Re-)Implementing ability to keep PIT records after Interest is getting satisfied

Default behavior remained the same.

As part of this commit, a small extension (and bug fix) in trie data
structure, allowing search with predicates (e.g., used to lookup a
non-empty PIT entry during Lookup on ContentObject header).
diff --git a/model/pit/ndn-pit.cc b/model/pit/ndn-pit.cc
index ad8f4a2..224e013 100644
--- a/model/pit/ndn-pit.cc
+++ b/model/pit/ndn-pit.cc
@@ -24,7 +24,7 @@
 #include "ns3/ndn-content-object.h"
 
 #include "ns3/log.h"
-#include "ns3/string.h"
+#include "ns3/nstime.h"
 #include "ns3/uinteger.h"
 #include "ns3/simulator.h"
 
@@ -44,10 +44,10 @@
   static TypeId tid = TypeId ("ns3::ndn::Pit")
     .SetGroupName ("Ndn")
     .SetParent<Object> ()
-    
+
     .AddAttribute ("PitEntryPruningTimout",
                    "Timeout for PIT entry to live after being satisfied. To make sure recently satisfied interest will not be satisfied again",
-                   StringValue ("100ms"),
+                   TimeValue (), // by default, PIT entries are removed instantly
                    MakeTimeAccessor (&Pit::m_PitEntryPruningTimout),
                    MakeTimeChecker ())
     ;