Don't accept broken locales, and error if default_locale is invalid (bug 941075)

https://bugzilla.mozilla.org/show_bug.cgi?id=941075

This helps prevent "nameless" apps in zamboni. Relevant testmanifests (test with your browser language set to something else than english when submitting for maximum breakage):
- http://brokenptbr.testmanifest.com/
- http://brokendefaultlocale.testmanifest.com/
- http://unsupportedlocale.testmanifest.com/
I think it's better to use `x not in y` instead of `not x in y`.