Revert "Revert "New implementation of llvm-rs-cc (replacement of slang_driver).""

This reverts commit a6d60672695f1438a63acdbf85eae7f97ce2b50d.
diff --git a/slang_rs_context.h b/slang_rs_context.h
index 19f81ef..e54ed1e 100644
--- a/slang_rs_context.h
+++ b/slang_rs_context.h
@@ -111,13 +111,6 @@
     mReflectJavaPackageName = S;
     return;
   }
-  inline void setReflectJavaPathName(const std::string &S) {
-    mReflectJavaPathName = S;
-    return;
-  }
-  inline std::string getReflectJavaPathName() const {
-    return mReflectJavaPathName;
-  }
 
   void processExport();
   inline void newExportable(RSExportable *E) {
@@ -169,12 +162,11 @@
   // and return true.
   bool insertExportType(const llvm::StringRef &TypeName, RSExportType *Type);
 
-  bool reflectToJava(const char *OutputPackageName,
+  bool reflectToJava(const std::string &OutputPathBase,
+                     const std::string &OutputPackageName,
                      const std::string &InputFileName,
                      const std::string &OutputBCFileName,
-                     char realPackageName[],
-                     int bSize);
-  bool reflectToJavaPath(const char *OutputPathName);
+                     std::string *RealPackageName);
 
   ~RSContext();
 };