codec: introduce DecodeOptions.PreferPointerForStructOrArray
codec: introduce DecodeOptions.PreferPointerForStructOrArray

This controls whether a struct or array is stored in a nil interface{},
or a pointer to it, especially when decoding registered extensions.

Fixes #322

ugorji/go,ugorji/go,ugorji/go