model: fixing regression with trie data structure

Two out of three payload_traits types got broken
diff --git a/utils/trie/trie.h b/utils/trie/trie.h
index a38ac28..b890631 100644
--- a/utils/trie/trie.h
+++ b/utils/trie/trie.h
@@ -49,8 +49,8 @@
   typedef Payload*        return_type;  // what is returned on access
   typedef const Payload*  const_return_type; // what is returned on const access
 
-  typedef typename Payload::base_type*       base_type;       // base type of the entry (when implementation details need to be hidden)
-  typedef const typename Payload::base_type* const_base_type; // const base type of the entry (when implementation details need to be hidden)
+  typedef BasePayload*       base_type;       // base type of the entry (when implementation details need to be hidden)
+  typedef const BasePayload* const_base_type; // const base type of the entry (when implementation details need to be hidden)
   
   static Payload* empty_payload;
 };
@@ -89,8 +89,8 @@
   typedef Payload&        return_type;
   typedef const Payload & const_return_type;
   
-  typedef typename Payload::base_type&       base_type;
-  typedef const typename Payload::base_type& const_base_type;
+  typedef BasePayload&       base_type;
+  typedef const BasePayload& const_base_type;
   
   static Payload empty_payload;
 };