first part of config struct multiarray stuffs
generalize multiarray forwarders
move multiarray macros to config_macros, config macros too
improve config/multiarray macros