Implement server push

~~Depends on #39~~

See the changes to `docs/source/advanced.rst` for an overview.

Apologies for not getting approval for this ahead of time; you did clearly state in the documentation that server push wasn't a planned feature. However, I find it one of the most compelling parts of HTTP/2.0, and I think this a workable API for a single-threaded library. What do you think?

P.S. I also snuck in a fix for a bug that caused hyper to crash when trying to send a `WINDOW_UPDATE` frame to a server that had gone away with the stream half-closed on the remote side.