Cache collation keys inside MediaSourceItem, to cut on overhead

This should save a tiny bit of computation
Introduce NaturalCollate.vala
Use NaturalCollate instead of g_utf_8_collate_key_for_filename in Mediapage

This avoids the ugly behaviour with dots