Add serial_num/connection_id handling and save/restore last device

This patch performs several correlated changes:
- Make use of sdi->serial_num and sdi->connection_id in
Device::format_device_title()
- Add a Device::get_device_info() method that returns a map
with all device identification information that's available
- Add a DeviceManager::find_device_from_info() method which
returns the best match to a given set of device infos
- Add save/restore code to the MainWindow class that makes
use of the aforementioned maps to identify the currently
selected device.