Fix #605 by closing current device when another is selected As the device manager class holds a pointer to all devices they will never be destroyed until PV exits. Devices are opened with the first call to create() but only closed in the destructor. Together, this results in devices never being closed. This patch fixes this by renaming create() to open() and introducing a matching close() method that the session class calls when a different device is to be selected.