Implement one-definition-rule (ODR) feature.

When compiling multiple RS files, we say two RS files A and B break ODR
iff:

1. They have at least one common struct named [S] and [S] will be reflected
to ScriptField_[S].java, and
2. [S] defined in A is not *exactly the same* (number of fields, field
type and field name) as the one defined in B.

This CL detects such error.
diff --git a/slang_rs_context.h b/slang_rs_context.h
index accd63f..e4e0416 100644
--- a/slang_rs_context.h
+++ b/slang_rs_context.h
@@ -133,6 +133,13 @@
     if (E != NULL)
       mExportables.push_back(E);
   }
+  typedef ExportableList::iterator exportable_iterator;
+  exportable_iterator exportable_begin() {
+    return mExportables.begin();
+  }
+  exportable_iterator exportable_end() {
+    return mExportables.end();
+  }
 
   typedef ExportVarList::const_iterator const_export_var_iterator;
   const_export_var_iterator export_vars_begin() const {