Fix and extend map test

 * Fix "multimap serialization" test: did not test multimap before
 * Add test of class with json member for both value and key
 * Shift class names around a bit to get comparable to vector_test:
   * old X is now A<M>
   * new X is a wrapper around an int member
"Fix" picojson_map_serializer.h

 * Add more const_cast<T>(T const&) to get rid of compile problems:
   more possible undefined behaviour
 * Remove value_converter<multimap<K,V> >::to_value(map_type&) as not
   used
Start handling of const qualification "correctly"

THIS IS AN INTERFACE BREAKING CHANGE: if any const types are
serialized, this will now stop working until the json() methods are
updated. Same for serialization of map and multimap with keys that use
a json() method.

Remove all const_casts. For some reason or other, need to explicitly
specify the version of to_value() used in value_converter<map> and
value_converter<vector>. These are operators::to_value_c() and
operators::to_value_nc().
Remove unused operators::from_value()