Fork functionaljava and start making some improvements.
New syntax for overloading call and brackets with a self-name:
{(selfName(args) = ...), (selfName[args]) = ...}.  Previously it would
be selfName.(args) or selfName.[args] for the signature which wasn't as
neat.
Move all the parsing tests into banjo.parser.test.
Don't report bad dedent for a parentheses.  That's the case where you
are allowed to dedent.
Do string formatting for the BadExpr.
Add constant for the empty FileRange.
Remove methodMap from ObjectLiteral
Some fixes for the DefRefAnalyser to make it easier to use in the IDE
code.
Update functionaljava.jar
Fix some bugs that caused the source ranges to be wrong for reported
errors.
The change to support operator functions was also trying to work with
object literals, which is not a good idea.
Fix some issues where the analysis couldn't correctly locate variables
created by unpacking in the source code.
Some more incremental updater fixes, trying to get it to be more precise
in its updates.
Fix a bug in the parser between assignment and cond.  A conditional
should allow assignment on the right without parentheses, but require
parentheses on the left if the assignment is part of the condition.
Fix unit test to expect the appropriate class here.
Add desugar support for <=>.  Fix up BadIdentifier so it doesn't throw
an error on visit.  Report the need for 0 and "" when a string literal
or number literal are referenced.
Add a test to suss out some scanner bugs I ran into.
Working on some ideas, changed the toSource methods in a few places to
cleverly try to reproduce the original source instead of the desugared
look.  Support self-referential functions by setting the selfName on
local functions equal to the function's name.
Test and fix desugaring that sets the selfName on a local function to
the function's name.
Add support for the absolute value operator - |x|.