private static Version fromUrl(URL url)
    {
        Version v = new Version();
        if(url != null)
        {
            InputStream stream = null;
            try
            {
                URLConnection conn = url.openConnection();
                v._modified = new Date(conn.getLastModified());
                
                stream = conn.getInputStream();
                v._manifest = new Manifest(stream);
            }
            catch(IOException ioe)
            {
                throw new RuntimeException(
                    "Failed to load manifest from " + url, ioe
                );
            }
            finally
            {
                try { if(stream != null) stream.close(); }
                catch(IOException e) {}
            }
        }
        return v;
    }