UI improvements, refactoring, minor bug fixes

* Set 'wait cursor' through a context manager, and possibily display a message, when time-consuming operations are performed (in this case, a call to download data from the platform).
* More intuitive management of selection dialogs, preselecting or deselecting layers in case one of them is active or not.
* Fix a bad merge that duplicated some moved code.
* Additional buttons to access built-in QGIS field calculator or normalization dialog, when selecting attributes to build standard integrated risk indices.
* Renaming a number of things in order to comply with scientific conventions and avoid confusion. Additional refactoring to clean up the workflow.
* When social vulnerability variables are imported from the platform, instead of adding to the registry the csv-based layer (not editable), we add a in-memory copy of it (editable).
* Fix layer duplication (when building the duplicate, do it within a context manager that commits changes when complete
* When attempting to transform an attribute containing QPyNullVariant values, the transformation is performed only on the available data (NULL values remain NULL after the transformation)
* When attempting to perform a log10 transformation, let the user choose if pre-changing zero values to one or letting the transformation fail in case of zeros (tests changed accordingly)
* Catch normalization exceptions and display error messages in the QGIS messageBar
* Actions to be performed on a single layer (so far: normalize attribute and compute SVIR indices) are added also to the menu of the layer legend in a "SVIR" submenu