Deprecate string options in URL helpers

Fixes https://github.com/rails/rails/issues/16958

I pretty much implemented @bronzle's fix in the issue comments, so he should have credit too.
regarding assigning items that were not previously there, I originally had: `options[options.to_sym] ||= value if value` which gives the symbol option precedent as well as only assign when value is not nil (actually might want `unless value.nil?` instead?)