Add new table view controller for all instances.

This new controller calls the shared settings which updates the list of
instances and then generates an alphabetically sorted list of table cells. The
cells are added to the controller in a single section. The all maps view  has a
delegate that will be set to the instance switcher controller so that controller
can update perform the instance switch which avoids the instance switch logic in
multiple places in the code.
Make instance switcher a delegate.

The instance switcher needs to be the delegate for the all instance table view
controller and it needs to trigger switching to an instance update based on the
returned data.
Prevent application from entering infinite loop.

If the server does not respond or serves bad data on attempting to set the
instance we hit an infinite loop of wherein we:
(try to fetch an instance) --> (fail) --> (repeat)
Instead we just throw an error that can be dismissed and a simple log message.