access restriction for contest config
Made sample task config slightly more concise
Don't touch exceptions in AbstractConfig.readconfig
Use Rule instead of ProgramManager for compilation
Use CommandRule for executables
Refactored code

Added some comments, changed some whitespace
Use "with" syntax for stack of working directories
Don't touch exceptions from task configuration