Improve several aspects within the backend dialog

- make backend dialog like a real dialog. Besides making the backends dialog like a real dialog (not a normal window), user is still able to resize the dialog.
- order backend names in alphabetical order so that it's more readable for users, also avoids available backends are shown in random order.
- only show unsed backends in the backend combo list. I didn't find any necessarity to allow user add a backend multiple times, in which case unpredictable situations would happen.
You should be able to use one backend multiple times. No need to exclude already used backends