Added // as a line comment.

Also updated syntax files. This shouldn't cause any backwards compatibility
issues, if someone was using an unquoted double slash, it was already
a compile error.
Updated notepad++ syntax highlighters.
Fail faster if IVariable is passed in a null value.
Removed whitespace requirements in labels and slices.

Previously, labels were fixed so they didn't require particular whitespace,
but the code for that was placed in a compiler function. Information about
the token stream had been lost at that point, some of the information which
turned out to be vital, was lost during compilation. Now the full parsing
is done in the compiler, where it belongs.
Removed artificial restriction for counting down with slices in foreach().

Previously, foreach(5..1, @i){ } would have caused a range exception. This restriction
was put in place artificially, and has now been removed.
Updated source to Java 7.
Also catch IllegalFormatConversionException. Fixes 2869.
Fixed absolute paths in read(_async). Also removed base-dir restrictions in cmdline mode.
Fixed merge conflicts.