client modules and core stuff
code clean up