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: I368c83512d517206154d1fa4efadf361260d80d6
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>