creating a ui module to handle the ui related stuff, this should be broken down more later