Update .NET SDK to 2.0.3

This will allow SourceLink as per #4179, and mean that we can use C#
7.0 language features in the library (but not in generated code).
This does not affect which platforms we're *targeting*, so end users
won't see any difference.

It would be nice to update to 2.1.4, but AppVeyor's "Visual Studio
2017" environment is only 2.0.3.
diff --git a/.travis.yml b/.travis.yml
index 6e34d45..9998146 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -59,9 +59,16 @@
       env: CONFIG=csharp
       language: csharp
       dist: trusty
-      sudo: required
-      dotnet: 1.0.4
+      dotnet: 2.0.3
       mono: none
+      # Install the .NET Core 1.0 runtime as that's what we test against
+      addons:
+        apt:
+          sources:
+          - sourceline: 'deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main'
+            key_url: 'https://packages.microsoft.com/keys/microsoft.asc'
+          packages:
+          - dotnet-sharedframework-microsoft.netcore.app-1.0.5
     # This test is kept on travis because it doesn't play nicely with other
     # tests on jenkins running in parallel.
     - os: linux
diff --git a/csharp/global.json b/csharp/global.json
index 3622b56..5ab775b 100644
--- a/csharp/global.json
+++ b/csharp/global.json
@@ -1,5 +1,5 @@
 {
   "sdk": {
-    "version": "1.0.0"
+    "version": "2.0.3"
   }
 }
diff --git a/kokoro/linux/prepare_build_linux_rc b/kokoro/linux/prepare_build_linux_rc
index 4c3f255..f64ea95 100644
--- a/kokoro/linux/prepare_build_linux_rc
+++ b/kokoro/linux/prepare_build_linux_rc
@@ -3,7 +3,11 @@
 # Source this rc script to prepare the environment for Linux builds
 
 # Set up dotnet
-sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
-sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
+sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-trusty-prod trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
+sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB3E94ADBE1229CF
 sudo apt-get update
-sudo apt-get install -y dotnet-dev-1.0.4
+# We use the .NET Core SDK 2.x to build...
+sudo apt-get install -y dotnet-sdk-2.0.3
+# But we also need the 1.x framework to test against, as we
+# target netstandard1.x
+sudo apt-get install -y dotnet-sharedframework-microsoft.netcore.app-1.0.5