SERVER-9932 SERVER-10857 Text search language aliases/validation

Users can now use two-letter language codes and can specify
languages in mixed case.

The following operations will now fail if they do not pass language
validation:

- Building a text index (if default_language fails validation or if
  the target collection contains a document with a language that
  fails validation).
- Inserting a document into a text-indexed collection (if it
  specifies a language that fails validation).
- A text query or text command (if it specifies a language that
  fails validation).