Fix #628 Unload Input Source Problem

Now the user can load and unload video/audio input sources
and record without closing the program.

This bug was caused because the flag variables
self.record_audio and self.record_video are not cleared
after a cycle of recording ends. So the program will
try to unload the source even it has been unchecked.
This fix reset the variables by the end of recording
so it will not influence the next one.
Fix #638 Set "Record Region" after selecting region

- Automatically check the "Record Region" button after the user selects
  a region to record.
- Rename the "Set" button to "Select Region".
Fix #476 Auto Language Changing When First Launch

Freeseer will now scan the System language for the first time.
If there is translation for the location, the interface language
will be set to that language by default. Otherwise en_US will be used.
Add the unit test for settings.py

Due to the test result, some changes has been made to settings.py
- Change the QLocale.system().name() to QLocale.name() for writing
test case.
- Consider the special case for language only situation such as "ja".