Optimize misc::naturalSort()

Previous implementation used QRegExp to find a first digit. That is
utterly ineffective.

When torrent list is sorted by name (a column that uses the naturalSort() for
comparison), naturalSort could take 18.6% of the time of the UI thread. Optimize it
so now it takes 1% of the time of the UI thread.
Merge pull request #2041 from sorokin/optimize-natural-sort

Optimize misc::naturalSort()
Don't show multiple unlock UI dialogs. Closes #2040.