Improve error code to error string translation

We now use an explicit switch to translate an error code to an error string as
this allows the compiler to statically verify that we covered all cases. While
at it we add a new error message for "kErrInvalidSource" which was missing
previously. We also remove "kMaxErrorCode" as it was unused.

Change-Id: I8ade465697c7fa6cc3e48c5c581e5a4dfcf15959
diff --git a/include/bcc/Compiler.h b/include/bcc/Compiler.h
index fb51940..0d6db0d 100644
--- a/include/bcc/Compiler.h
+++ b/include/bcc/Compiler.h
@@ -69,9 +69,7 @@
     kErrHookBeforeExecuteCodeGenPasses,
     kErrHookAfterExecuteCodeGenPasses,
 
-    kErrInvalidSource,
-
-    kMaxErrorCode
+    kErrInvalidSource
   };
 
   static const char *GetErrorString(enum ErrorCode pErrCode);