Fix utils.to_rfc822()

Per [RFC2616 section 3.3.1](http://tools.ietf.org/html/rfc2616#section-3.3.1), the dates in HTTP must always end in `GMT`, the numerical notation for the timezone is not valid.

Also, instead of calling `email.utils.formatdate` which forces us to do a needless conversion of our `datetime` to a `float` and does other stuff we don't need, I just copied the relevant code from `email.utils.formatdate`, probably making the function a bit faster and gaining python 3 compatibility at the same time (by removing the need for the `.decode()` call).