Enable pcomn::mapped_iterator to use pointers as containers

 Also removed seprate pcomn::const_mapped_iterator, mapped_iterator<const Container> will do.
 pcomn::const_mapped_iter() function remains.
Fix pcomn::mapped_iterator for pointers
Add pcomn::closed_hashtable constructor which accepts key_extractor argument