exporter/stackdriver/trace: status code inconsistency between Java and Go
Currently the Java implementation sets a trace's status code as 0 for success unconditionally if there is a message or not.

However, the Go implementation doesn't set it and has an explicit check to ensure that we only send the status code if it isn't 0(SUCCESS) or if there is a message
https://github.com/census-instrumentation/opencensus-go/blob/fbaec820443e7fc539372512988537141461a3e6/exporter/stackdriver/trace_proto.go#L66-L68

We need to be consistent, and for each implementation, what's the rule on what status codes to ignore? If there is one, let's document it too in each implementation otherwise
/cc @songy23 @sebright @HailongWen
/cc @bogdandrutu
What's the difference between having an explicit 0 status vs having none? If it is a significant different, we should also represent this in the APIs by allowing a nil Status case.
If there is no significant difference, then zero value doesn't have to be reported.