Integrate changes from github.com/pomack/thrift4go

Integrated from 4e1ad38
Fix imports: add package prefixes, configurable thrift import.

Avoid generating multiple (invalid) import statements.
Update, simplify and format go tutorial code
Remove unneeded nonblocking work
Remove t prefix from filenames
TIOStreamTransport -> StreamTransport simplification
TSocket comment cleanup
TTransport simplification and cleanup.
Perform dummy math assignment in generated -remote files as well.
Add strconv to blind import workaround
Fix number of arguments for NewSocketAddr
Simplify MemoryBuffer Transport implementation
Simplify TTransport

Use io.ReadFull instead of custom implementation
Simplify TSocket and TServerSocket, update example code
Reduce exported surface area
Comment and formatting cleanup.
Simplify exceptions
Clean up TApplicationException code
Move to more idiomatic error interface.
Removed unused TMessage