support translations of surveys via yaml

we propose placing translations in a yaml file, to be processed and stored in the database at survey dsl parse time, so that versions remain in sync. this will require a survey_translations table, and modifications to all the methods that display text specified in the survey and displayed to the user. it may also require modifications of input masks, since different locales specify dates in different ways.

example yaml:

```
es:
  2a:
    text: "Por favor, explique por qué no te gusta este color"
    answers:
      1:
        text: "explicación"
        help_text: "Por favor dé una explicación para cada color que no le gusta"

```