Revisited #305 and added natural sorting

Now sorts correctly for floating point numbers as well as "normal" natural sort
with leading zeros and spaces ignored.

Code is inserted from the OpenMW project (under GPLv3) and is credited in comments.

Example:
93.jpg
94.jpg
0.942e2.jpg
94.99999.jpg
0.95e2.jpg
100.jpg
0.95e3.jpg
20140808-1802-P1000002.jpg
20140808-2128-P1000028.jpg
20140808-2148-P1000031.jpg
20140817-0940-P1000162.jpg
Kaya 1 photo 1.jpg
Kaya 1 photo 2.jpg
Kaya 1 photo 10.jpg
Kaya 2 photo 2.jpg