basic server skeleton