force unwrap optionals that were previously implicitly unwrapped
prepend `?` only when serializing parameters for GET requests
merge from upstream