additional simple IO functions
pass sourcedir to javac
allow argument-less main function