This stuff is here instead of in the main source tree because we don't want it to go into classes and/or gate.jar.