Refs #969 - Proxy-side changes for serving templates from the proxy

An update to @GregSutcliffe's original PR (https://github.com/theforeman/smart-proxy/pull/100/files). Ports his original feature to the new plugin api.
@witlessbird in addressable::uri, it allows you to pass a hash to set the query instead you having to manually url encode your query. (mostly just for L16 below)