lavu/opt-test: use automatic set and free handlers

In particular, do not set default string value by hand and use
av_opt_free() to free context.
lavu/opt.h: fix grammar typo in av_opt_get* doxy
lavu/channel_layout: change av_get_channel_layout() behavior at the next bump

The new syntax is preferred since it allows backward syntax compatibility
with libswr when switching to the new option handling code with
AV_OPT_TYPE_CHANNEL_LAYOUT.

With the new parser the string:
1234

is interpreted as a channel layout mask, rather than as a number of
channels, and thus it's compatible with the current way to set a channel
layout as an integer (e.g. for the icl and ocl options) making use of
integer option values.

ff_get_channel_layout() with compat=0 will be used in the
AV_OPT_TYPE_CHANNEL handler code.

The user is encouraged to switch to the new forward compatible syntax,
which requires to put a trailing "c" when specifying a layout as a number
of channels.
lavu/opt: add AV_OPT_TYPE_CHANNEL_LAYOUT and handler functions

The new type is compatible with AV_OPT_TYPE_INT64, but allows to specify
channel layouts using the format accepted by av_get_channel_layout().
lswr/swresample: convert ocl and icl options to AV_OPT_TYPE_CHANNEL_LAYOUT

Improve interface flexibility. In particular makes it possible to set
channel layout through symbolic names using the av_opt_set() interface.
Merge branch 'master' of https://github.com/FFmpeg/FFmpeg