Map exception types from proxy back to thrift exceptions
Map exception types from proxy back to thrift exceptions

Summary:
Because we normally don't serialize TTransportException or TProtocolException,
the proxy serializes these errors as TApplicationException. This makes it more
difficult for a proxied client to distinguish the type of error that actually
happened.

This change makes the SR proxy send "ex" codes in the thrift header of the
response that indicate when the failure was the result of transport or protocol
exceptions, and adds mapping to the clients created by the swift proxy client
utility so that these exceptions will be received properly.

Test Plan: - test this on MQTT, see if it helps alleviate failures from using sr proxy

Reviewed By: alandau@fb.com

FB internal diff: D1167689

@override-unit-failures

getyourguide/fbthrift,SergeyMakarenko/fbthrift,maxwell-demon/fbthrift,uber/fbthrift,jesboat/fbthrift,chjp2046/fbthrift,fengshao0907/fbthrift,HankFaan/fbthrift,jesboat/fbthrift,maxwell-demon/fbthrift,Orvid/fbthrift,soumith/fbthrift,Orvid/fbthrift,maxwell-demon/fbthrift,facebook/fbthrift,maxwell-demon/fbthrift,soumith/fbthrift,kangkot/fbthrift,guker/fbthrift,HankFaan/fbthrift,kangkot/fbthrift,HankFaan/fbthrift,LinusU/fbthrift,project-zerus/fbthrift,fengshao0907/fbthrift,Orvid/fbthrift,chjp2046/fbthrift,project-zerus/fbthrift,Orvid/fbthrift,guker/fbthrift,Orvid/fbthrift,kangkot/fbthrift,guker/fbthrift,Orvid/fbthrift,fengshao0907/fbthrift,project-zerus/fbthrift,getyourguide/fbthrift,soumith/fbthrift,fengshao0907/fbthrift,uber/fbthrift,HankFaan/fbthrift,maxwell-demon/fbthrift,facebook/fbthrift,Orvid/fbthrift,SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,fengshao0907/fbthrift,SergeyMakarenko/fbthrift,kangkot/fbthrift,kangkot/fbthrift,soumith/fbthrift,raphaelamorim/fbthrift,getyourguide/fbthrift,HankFaan/fbthrift,uber/fbthrift,raphaelamorim/fbthrift,maxwell-demon/fbthrift,guker/fbthrift,kangkot/fbthrift,soumith/fbthrift,sinjar666/fbthrift,chjp2046/fbthrift,Orvid/fbthrift,guker/fbthrift,sinjar666/fbthrift,soumith/fbthrift,HankFaan/fbthrift,project-zerus/fbthrift,sinjar666/fbthrift,soumith/fbthrift,uber/fbthrift,chjp2046/fbthrift,chjp2046/fbthrift,raphaelamorim/fbthrift,LinusU/fbthrift,facebook/fbthrift,chjp2046/fbthrift,uber/fbthrift,getyourguide/fbthrift,project-zerus/fbthrift,sinjar666/fbthrift,uber/fbthrift,kangkot/fbthrift,maxwell-demon/fbthrift,LinusU/fbthrift,LinusU/fbthrift,Orvid/fbthrift,sinjar666/fbthrift,sinjar666/fbthrift,fengshao0907/fbthrift,SergeyMakarenko/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,LinusU/fbthrift,kangkot/fbthrift,project-zerus/fbthrift,project-zerus/fbthrift,LinusU/fbthrift,chjp2046/fbthrift,soumith/fbthrift,jesboat/fbthrift,HankFaan/fbthrift,getyourguide/fbthrift,project-zerus/fbthrift,guker/fbthrift,guker/fbthrift,jesboat/fbthrift,kangkot/fbthrift,LinusU/fbthrift,jesboat/fbthrift,fengshao0907/fbthrift,kangkot/fbthrift,guker/fbthrift,maxwell-demon/fbthrift,uber/fbthrift,chjp2046/fbthrift,SergeyMakarenko/fbthrift,jesboat/fbthrift,raphaelamorim/fbthrift,maxwell-demon/fbthrift,facebook/fbthrift,raphaelamorim/fbthrift,project-zerus/fbthrift,SergeyMakarenko/fbthrift,uber/fbthrift,Orvid/fbthrift,soumith/fbthrift,LinusU/fbthrift,getyourguide/fbthrift,uber/fbthrift,project-zerus/fbthrift,facebook/fbthrift,fengshao0907/fbthrift,chjp2046/fbthrift,maxwell-demon/fbthrift,raphaelamorim/fbthrift,facebook/fbthrift,soumith/fbthrift,jesboat/fbthrift,jesboat/fbthrift,getyourguide/fbthrift,LinusU/fbthrift,chjp2046/fbthrift,guker/fbthrift,kangkot/fbthrift,uber/fbthrift,HankFaan/fbthrift,sinjar666/fbthrift,jesboat/fbthrift,raphaelamorim/fbthrift,guker/fbthrift,SergeyMakarenko/fbthrift,sinjar666/fbthrift,HankFaan/fbthrift,raphaelamorim/fbthrift,sinjar666/fbthrift,LinusU/fbthrift,facebook/fbthrift,sinjar666/fbthrift,HankFaan/fbthrift,fengshao0907/fbthrift,soumith/fbthrift,fengshao0907/fbthrift,jesboat/fbthrift,SergeyMakarenko/fbthrift,HankFaan/fbthrift,uber/fbthrift,jesboat/fbthrift,raphaelamorim/fbthrift,LinusU/fbthrift,guker/fbthrift,uber/fbthrift,chjp2046/fbthrift,maxwell-demon/fbthrift,Orvid/fbthrift,project-zerus/fbthrift,SergeyMakarenko/fbthrift,getyourguide/fbthrift,SergeyMakarenko/fbthrift,raphaelamorim/fbthrift,fengshao0907/fbthrift,chjp2046/fbthrift,project-zerus/fbthrift,sinjar666/fbthrift,getyourguide/fbthrift,raphaelamorim/fbthrift,getyourguide/fbthrift,jesboat/fbthrift,getyourguide/fbthrift,facebook/fbthrift,facebook/fbthrift