new serverthread implementation