removing gui configuration into its own module.
started refactoring for dependency management