Initial commit with an ANTLR4 grammar

The grammar will be under continual revision.
removed ref statement

use ':=' instead to rebind names to outer scopes.
if a global name is shadowed, a possible design is
to use the 'var@global' modifier. in this case
the plain '=' can be used instead of the ':='.
cast and concat expressions

Also added notes on how to by-pass property setter inside class.
Type constraint with array & function types

Also added array creation and initialization.
Multidimensional arrays are accessed by using
comma seperated list of indices. Note that
it is also possible for a dictionary to retrieve
elements in the same fashion as a multi-dim array,
the meaning is determined by the object type.
overload do-while on blocks

without introducing new keywords!
enabled do-while-else

blocks now start with '::', and can have a label.
added array/list/set/dict literals

also changed type constraints into type signatures,
which may serve as a type constraint or a provider.
wildcard in type signature

this enables code to create arrays of inferred element type
grouping array element type signature

with '<' and '>'. this allows for grouping wildcard expression,
such as "x = <? in str>[5];".
both lower and upper bound in type signature

by using the form of "subclass in ? in superclass" to
indicate the wildcard '?' is between the sub and super.
enable generic type signature

not just for list, it may be for any class
Merge https://github.com/langit/jael

just created the repo at github