Don't allow expressions for field names in objects.

Previously, code of the following form was legal in the grammar:

  { ["he" + "llo"] : 5 }

This commit changes this, so that it is now illegal. This is the first
step towards changing the AST to not use the Expr type in Member, and
instead use something like String or Name.

Note that strings are now allowed in the field name position. For
example:

  { "5" : 5 }

This may not stay, since the only way to access such fields is by
converting them into a string dictionary (see to-dict() in string-dict).