added a common update server framework