Enabled more control over source, test, libraries and binaries properties.

Before these changes, the values for the following Sonar properties would be picked up from the project build path only:
sonar.sources
sonar.tests
sonar.binaries
sonar.libraries

If these properties were supplied in Project / Properties / SonarQube / Preview Analysis Properties, they were ignored and would not have been used in the scan. These changes stop such user-supplied properties being ignored. If they are supplied, their values will be appended to the values from the project build path.

However, these changes also enable the user to prevent the values from the project build path being included in the analysis. Project / Properties / SonarQube / Preview Analysis Properties now contains a checkbox for each of the properties. If the user leaves them checked, the respective settings from the project build path will be added to any user-supplied properties in the table above. If they are unchecked, only the user-supplied values in the property table will be used.

By default, the behaviour is at was before the changes.

I am not sure which branch I should have used to do this, please let me know if I need to use a different one.