Changed the code that retrieves a translation given a context.

Previously the format of the catalog for translations with context was
[{ctxA: t1, ctxB: t2}, {ctxA: t1_plural, ctxB: t2_plural}] which was not
very clever (duplicate info, bad structure, sorry!).

Now the format is the more concise [{ctxA: [t1, t1_plural], ctxB: [t2, t2_plural]}].

The wrapping arrays in the context object values are mandatory even if
only one element is present (no plurals).

The external array wrapping is optional but allowed to achieve
consistency with how things were already done before context
translations were allowed.