Basic support for I18n contexts as requested by #2063

I've tried creating the basics for this. It can only read the translations using contexts (not extract them yet) and it only has the ```__x``` function for now (as proposed by @garas in issue #2063).
Can we break the line, here?
It's a bit long. *nitpicking*