We let PBS know that .java files are considered source code.
We declare a rule to match the all target.
This is a conveniance rule as we could build all classes directly from the command line.
Rule classes matches any taget that ends with .class and declares a dependency to a matching .java file.
The javac command is passed the path of the file to build and the .java file.