Dramatically simplify by moving to native go types for lists/sets/maps

Reduce TTypes to actual valid Thrift list
Change to int8 instead of byte (byte is unsigned)
Render inherited methods for -remote
Print autogen comment later as to not make it part of package documentation
Generate a constants.go

Prevent name mangling
Correct oproto nil check
Fix go get url
Don't mangle target package directory.
Simplify go example code
Code cleanup and shortening.

Place thrift metadata into field tags.
Unexport StreamTransport field
Simplify types.go
Simplify by removing removing TStruct

Change TField to be unexported field
Simply generated service api
Remove unused TBase
Abort on invalid go map key types.