Feature localization and Japanese translation; closes #110, closes #634, closes #636

- the app (Builder, Coder) has been updated to be able to display menu, tool-tips, start-up hints, dialogs and so on in nearly any language, when a translation is available. This reflects joint work by Jeremy Gray and Hiroyuki Sogo.
- a translation is available for Japanese (日本語), involving over 1000 snippets of text. select the locale in prefs, quit, and restart the app to see changes.
- new translations can be added without needing to change the psychopy code base. Use poedit, following the new documentation (.rst) for developers and translators
- the language can be set through prefs -> app -> locale, or is detected from the OS if not explicitly set by the user.
- most of the Builder components were lightly refactored. A new test helps ensure that the code generated by each component has not changed. The test can fail going forward if people change Builder components and forget to update the test.
- component dialog displays have been changed even for English to be more readable.
- all tests are passing and there should be no merge conflicts with upstream master