put server into own module