restrict an access to object identifier
do not pass tes_context implicitly during object construction
make it safe pass null paths to json_deserializer
cosmetic changes
collections/item: replace some horrible code with use of boost:variant