Monkey patch 'django.utils.translation'

Modify Django's translation library, such that the gettext family of
functions return an empty string when attempting to translate a
falsey value. This overrides the default behavior [0]:
> It is convention with GNU gettext to include meta-data as the
> translation for the empty string.

This patch provides a holistic solution to replace the current piecemeal
approach [1][2].

Affected Methods:
    - gettext
    - gettext_lazy
    - pgettext
    - pgettext_lazy
    - ugettext
    - ugettext_lazy

[0] https://docs.python.org/2.7/library/gettext.html#the-gnutranslations-class
[1] bad803e451ce63b4693ecf52b66cedfce5b43160
[2] https://github.com/edx/edx-platform/pull/4653
Moreso the latter. The `*ngettext` functions have a slightly different
syntax (passing two strings and a number) [0]. Given that you're telling
the translation to choose between between one of two strings and provide
the proper pluralization, it would be odd to have the singular form
empty, yet have text in the plural form (or vice-versa). Even more odd
would be having both the singular and plural forms empty. When designing
this, I viewed those as "special cases" that should be addressed
separately.

Given this, I intentionally omitted it here.


Off-hand, I'm not sure how `*ngettext` handles one or both of the provided
strings being empty.

[0] https://docs.djangoproject.com/en/dev/ref/utils/#module-django.utils.translation