Use `response.set_header`, not `.headers [] = `

`add_header` and `set_header` encode the `key` as `str` if a unicode is
passed in (unfortunately, Werkzeug doesn't do that on its own).
Add header links to RST

* rel=doc for restful api
* rel=next and rel=prev for RST.TOP
Add `link: ...rel=doc` to `headers`