+ command line arguments, multithread, new classes