Adding some well-formedness checks.

* Prevents underscores in binding position inside graph.  Fixes #243
* Prevents underscores being used as vars
* Prevents underscores being used as shadowed ids
* Prevents duplicate fields in an object literal