saveImage / saveData: add an extension if user did not pick one
enable "save image" action after successful loading
add QThermCam namespace
split hw handling to separate class
split device locking to separate file

it's quite a lot of code, which I don't expect to improve anymore
unlock device in connect failure paths
cleanups