Rewrote language detection

Also updated the JSON for DarkSocket so it now supports French. Well,
half-supports it, the translator didn't finish.