Group Work 2
The main objective of the group work is to reinforce the skills obtained during the second half of the course.
Requirements
- The group work can be done (2 people per group). The pairs might be the same as during the first group work, but regrouping is also allowed. 
- If the group work does not go smoothly, let the instructor know about it.
 
- The program must be written by the group members.
- The program should not be too complicated (consult with the instructor).
The program...
- The program should resemble a game or communication with a client. You can continue work on your first project, but you are free to change it for another one.
- The communication with the user must be implemented using GUI (JavaFX). The program has to handle mouse and keyboard events.
- The window size has to be adjustable.
- Process exceptions using appropriate classes.
- The program has to read some data from a file or write some data into a file (e.g. use files to undo the last actions).
- The program should be user-friendly. If the user is expected to enter any info, the program should display an appropriate message/question about it. Probably, it would be useful to display introduction info about the program at first when the program is executed.
- The program must have several classes (including the main class). Objects must be described in the corresponding object classes using appropriate instance fields, constructors, getandsetmethods and other instance methods.
- The program must contain an appropriate amount of comments.