created header files for essential classes