move tests into seperate modules