initial server framework