Simplified typechecking to avoid duplicate checks.  Tremendous
improvement in compiler speed.

Small updates to testing files to bring them in line with current
meaning of readonly and immutable.
Made it so that system imports are relative to the config file (if
specified).

No config files are necessary for Linux and MacOS (but Windows needs
one).  Special testing config files are provided so that testing can be
done in Eclipse (which lies about where the compiler class files
actually are).

Merge remote-tracking branch 'origin/master'

Conflicts:
	src/main/java/shadow/Main.java
	src/main/java/shadow/output/c/Main.java
	src/main/java/shadow/typecheck/TypeChecker.java
	src/main/java/shadow/typecheck/TypeCollector.java