WifiSettings: revise and add support for editing EAP networks.

Use arrays.xml to store translations for enumerations;
avoid race conditions happened when pop up menu or dialog;
avoid saving configurations with networks disabled;
use the same layout for all the dialogs;
support editing EAP networks;
only unlock keystore before connecting;
and many bug fixes I cannot remember.

The number of lines in the new code is about 1/3 of the old one,
and it improves the readability a lot!
11 files changed