JavAdaptor : unrestricted dynamic software updates for Java