Added acorn error test

If an acorn error occurs, runner.getCompiler() returns null, so check for that.
Objective-J array literal fixes...

- Removed superfluous concatFormat call.
- Fixed args to concat.
- Added test for empty array.
No test for node.raw, charAt works with empty string
Added literal test
Objective-J dictionary literals...

- Removed redundant code.
- Added test.
Prefixed some strings with @
IvarDeclaration is not used, formatting
Don't bother with argument types, linters complain
Added ability to use + prefix for warnings on cli
Show all warnings in tests
Removed unused argument
Add a comment when using an update with @deref

The generated code is especially gnarly, so it helps to figure out what generated it.
Added test for @deref with side effects error
Cleaned up/optimized shadowed var check
@class declarations should be in the root scope
Changed the way global vars are handled...

- They are stored in the root (program) scope, not the compiler.
- Implicit globals are stored in the root scope.
- Handling the case where an implicit global later becomes a local due to a deferred var declaration.