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
I can't decide if I think it's neat that you take message_default or not. On the one hand it seems like good configurability, but then on the other hand, we expect this method to be situated in one place and called one time, so seems reasonable to expect people to modify the patch itself to change behavior.

nit: I still prefer single return