A context-free grammar is in Greibach normal form if every rule
has exactly one terminal, followed by zero or more variables, on the right hand side -- except when the variable on the left hand side is the start variable, we also allow a
rule with the right hand side being the empty string.
Show that for every context-free language, there is a context-free grammar in Greibach normal form
that generates the language.