Wrap JSInput Python code in CDATA section

Python code can commonly contain characters that are invalid XML, such
as '<' and '>'. This has proven to be a pain point for instructors
implementing custom Python grading functions for their JSInput problems
(see sample code below).

This change creates a more robust template from which to make
modifications.

```python
    # This is an XML syntax error, when not inside a CDATA block.
    if i < 0:
        print('negative')
```

https://github.com/edx/edx-platform/pull/4563
Merge branch dev into master