Canged CodedInputStream.ReadTag to use boolean result with out params to
support reading a field name rather than a field tag.
diff --git a/src/ProtocolBuffers.Test/TestProtos/UnitTestRpcInterop.cs b/src/ProtocolBuffers.Test/TestProtos/UnitTestRpcInterop.cs
index 3e9c35c..b4f7a51 100644
--- a/src/ProtocolBuffers.Test/TestProtos/UnitTestRpcInterop.cs
+++ b/src/ProtocolBuffers.Test/TestProtos/UnitTestRpcInterop.cs
@@ -257,7 +257,7 @@
         while (input.ReadTag(out tag, out field_name)) {

           switch (tag) {

             case 0: {

-              throw InvalidProtocolBufferException.InvalidTag();

+              throw pb::InvalidProtocolBufferException.InvalidTag();

             }

             default: {

               if (pb::WireFormat.IsEndGroupTag(tag)) {

@@ -541,7 +541,7 @@
             while (input.ReadTag(out tag, out field_name)) {

               switch (tag) {

                 case 0: {

-                  throw InvalidProtocolBufferException.InvalidTag();

+                  throw pb::InvalidProtocolBufferException.InvalidTag();

                 }

                 default: {

                   if (pb::WireFormat.IsEndGroupTag(tag)) {

@@ -773,7 +773,7 @@
         while (input.ReadTag(out tag, out field_name)) {

           switch (tag) {

             case 0: {

-              throw InvalidProtocolBufferException.InvalidTag();

+              throw pb::InvalidProtocolBufferException.InvalidTag();

             }

             default: {

               if (pb::WireFormat.IsEndGroupTag(tag)) {

@@ -1048,7 +1048,7 @@
         while (input.ReadTag(out tag, out field_name)) {

           switch (tag) {

             case 0: {

-              throw InvalidProtocolBufferException.InvalidTag();

+              throw pb::InvalidProtocolBufferException.InvalidTag();

             }

             default: {

               if (pb::WireFormat.IsEndGroupTag(tag)) {