Added changes from Thrift commits up to ff980c1432936c6bc897c60469ab05b5e0c6cb5e
Eunit cleanings
OSP-4 OSP-6 Implemented support for Multiplexing
Services on any Transport, Protocol and
Server as described here:
https://issues.apache.org/jira/browse/THRIFT-563
Some code optimizations
Implemented some test cases for the support of
multiplexing services and optimized the usage
of the client constructor function new_multiplexed
Added generated thrift multiplexing test files
Typo tweak
Type tweak for compatibility with Erlang/OTP 17.0
Apply patches from synlay/thrift - feature/erlang_support_for_multiplexing_services

- Introduce a new option app_ctx which data will be passed to handle_function/handle_error for every service call
- Add service name to handle_function/handle_error to better distinguish different service calls