pulled out some things into header file and ready to start coding modules.