Fix parsing of variables and constants for keypad
Fix parsing of variables and constants for keypad

Summary:
There were a few bugs in the code that parses and serializes the relevant variables and constants
in the Expression widget. First, it turns out that KAS includes `e` as a constant--previously, we
were capitalizing all constants (since the constants include `Pi`), which made the keypad always
render `e` as `E` and thus made it impossible for students to submit answers which required `e`.
Second, since `Theta` is represented by KAS as a variable and not a constant, it wasn't getting
capitalized correctly.

Now, we special-case the Greek letters that we support and exclusively capitalize those.

On Asana @ https://app.asana.com/0/132409062806753/160520196347998.

Test Plan:
- Open up an exercise with an Expression input.
- Add a natural logarithm (to trigger `e` as a constant), Pi, Theta, and the variables `x` and `X` to the answer ([link](http://localhost:9000/#content=%7B%22question%22%3A%7B%22content%22%3A%22%24%5C%5Cdfrac%7Bd%7D%7Bdx%7D%5C%5Cleft%28%5C%5Cdfrac5x%20%5C%5Cln%28x%29%5C%5Cright%29%3D%24%20%5B%5B%E2%98%83%20expression%201%5D%5D%5Cn%5Cn%22%2C%22images%22%3A%7B%7D%2C%22widgets%22%3A%7B%22expression%201%22%3A%7B%22type%22%3A%22expression%22%2C%22alignment%22%3A%22default%22%2C%22static%22%3Afalse%2C%22graded%22%3Atrue%2C%22options%22%3A%7B%22answerForms%22%3A%5B%7B%22value%22%3A%22%5C%5Cfrac%7B5-5%5C%5Cln%5C%5Cleft%28x%5C%5Cright%29%7D%7Bx%5E2%7D%2B%5C%5Ctheta%2BX%22%2C%22form%22%3Afalse%2C%22simplify%22%3Afalse%2C%22considered%22%3A%22correct%22%2C%22key%22%3A0%7D%5D%2C%22buttonSets%22%3A%5B%22basic%22%2C%22prealgebra%22%2C%22logarithms%22%5D%2C%22functions%22%3A%5B%22f%22%2C%22g%22%2C%22h%22%5D%2C%22times%22%3Afalse%7D%2C%22version%22%3A%7B%22major%22%3A1%2C%22minor%22%3A0%7D%7D%7D%7D%2C%22answerArea%22%3A%7B%22calculator%22%3Afalse%2C%22chi2Table%22%3Afalse%2C%22periodicTable%22%3Afalse%2C%22tTable%22%3Afalse%2C%22zTable%22%3Afalse%7D%2C%22itemDataVersion%22%3A%7B%22major%22%3A0%2C%22minor%22%3A1%7D%2C%22hints%22%3A%5B%5D%7D)).
- Open up the keypad.
    - Verify that each symbol renders appropriately, in the proper case, without error.

Reviewers: benkomalo, kevinb

Reviewed By: kevinb

Subscribers: jared

Differential Revision: https://phabricator.khanacademy.org/D29518

ariabuckles/perseus,ariabuckles/perseus,learningequality/perseus,ariabuckles/perseus,learningequality/perseus,ariabuckles/perseus