#38 - Port the Twitter middleware from katana

This is a direct port, no surprises.
Do we want to put this here or should we put in a totally generic user agent? You know, like `Mozilla/5.0 Blah Blah Blah` or something?