Why is the output address a list in RPC/console?
This is due to historical confusion between addresses and keys.

The original goal of this field was reporting the public keys involved in raw multisig outputs. However, those public keys were referred to by the P2PKH address corresponding to them.

This is confusing because obviously every output only corresponds to a single address. The feature is also useless now due to the introduction of P2SH, where instead of putting all public keys in the output, just a hash of script involving all those keys is stored.