Fix false-positive "libtool should be a build-time dep" audit warnings

Things that use `depends_on :libltdl` to get a runtime dep on libtool cause an audit warning, because normally we expect libtool to be a build-time dep. The implication that `:libltdl` should mean a runtime dependency is lost because we don't yet have a way to record it in the dependency object.

This introduces a `:run` tag for dependencies, but it should be used sparingly (i.e. only when required to silence audit warnings for deps that are usually tagged with `:build`).