Use correct name for key and value

This pull request is a fix for a fatal problem for about half of the relval tests in the ROOT6 IB.
The conditions code uses a complicated code to determine the names "key_type" and "value_type",
(typedefs of data members of STL collections), which never change.  Unfortunately, the new framework code returns the name of the underlying type rather than the name of the typedef.  Since the names returned never change, the easiest way to fix this is simply to hard code the the strings "key_type" and "value_type".
Also in this pull request is a fix for multidimensioned C arrays.  All but the first index were dropped due to s simple bug in MemberWithDict, which is fixed in this request.
 Please merge this promptly unless there are issues.