mixer: add ability to update control list with new controls

New controls could appear during runtime, for example if a
new firmware is downloaded to a DSP. Since ALSA drivers are
not supposed to delete or renumber existing controls we can
assume that any new controls will be after any controls we
already know about. We can use this to enable extending our
current list of controls, which is more efficient than
closing the mixer session and recreating it.

Change-Id: Id50255d748c539c3140b22ef8087a34d92536b27
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>