Added a unit test to show typechecking of unbound global variables will fail.
Added a unit test to demonstrate that declarations can refer to following declarations.
Fixed a parser bug that prevented UID assignment for sequences of applications greater than one (e.g. "f (f x)").
Added unit test to demonstrate sanity of back references.