Write a program to design an appointment calendar. An appointment includes the date, starting time, ending time, and a description; for example,

Dentist 2007/10/1 17:30 18:30
CS1 class 2007/10/2 08:30 10:00

Supply a user interface to add appointments, remove canceled appointments, and print out a list of appointments for a particular day. Follow the design process that was described in this chapter. Your solution should include a class AppointmentCalendar that is not coupled with the Scanner or PrintStream classes.

Complete the following files:

Appointment.java

AppointmentCalendar.java

AppointmentDate.java

AppointmentMenu.java

AppointmentSystem.java

AppointmentTime.java