adding framework of interfaces and classes. set up the main program method.