Starting on a lint pass to give more user-friendly warnings and errors.
Check for duplicate identifiers in function definitions.
Updating syntax for define in linter so that all tests pass now.