Make render_qsd tags expect literal URLs to be quoted

There is a family of tags {% inline[_program]_qsd_block %} and
{% render_inline[_program]_qsd %} that use InlineQSDNode.  This commit
enforces usage consistency of those tags by requiring that the 'url'
argument is either a quoted string, or the name of a template variable.
This avoids the confusing case of an unquoted string that fails to resolve
as a template variable and is then interpreted as a literal.

See discussion of 8d417fd.
Quote all literal url arguments to inline QSD tags

This is required by the previous commit.
Add a migration to remove quotes from QSD urls

This undoes the damage from some of the inconsistency in URL formatting
that we had.  The QSD objects with quoted URLs will be merged into the
version history of the QSD objects with unquoted URLs.
Add class category ID to JSON sections view
Add dynamic open_class_category support to lottery frontend

We now allow an open_class_category Tag to specify the ID of the
ClassCategories that should be used to represent "open" or "walk-in" type
classes for each program.  The lottery now displays the name of that
category and checks all classes against it, instead of using the hardcoded
name "Walk-in Seminars" and assuming that all classes with category symbol
W are in that category.
Fix e-mail code display in onsite class change grid
Add (but don't use) proper open_class_category support

This requires tracking categories by ID rather than symbol, so there are a
lot of small code changes, but overall this is pretty mindless.

Actually, I decided to comment out the small segments of code that would
hide open classes (whatever they are called) and their category.  There
are two reasons.  First, the onsite class changes grid is used by admins
and they will understand what walk-ins are (and want to see them in order
to suggest alternatives to students).  Second, most walk-ins are marked
closed to registrations and will only show up if the appropriate checkbox
is checked.  Comments/revisions welcome.