charm: refactor URL vs Reference

This is a breaking change, so move package path to charm.v3.
Maybe adding a (regression) test to insure that InferURL returns the same values as reference.URL and/or ParseReference?