Tighten up parsing of assignment

"x=!0" means "x = !0"  means  "x = 1" means "assign a new variable x the
value 1".