split code to modules, experiment with integration with WPF