Implement IDisposable for CodedInputStream and CodedOutputStream

This fixes issue #679 and issue #1282.
(The .gitignore change is just around ncrunch; I can put it in a separate PR if you really want.)
diff --git a/csharp/.gitignore b/csharp/.gitignore
index 07ea90a..c88f741 100644
--- a/csharp/.gitignore
+++ b/csharp/.gitignore
@@ -33,3 +33,4 @@
 mono/*.exe
 mono/*.dll
 lib/protoc.exe
+*.ncrunch*