Hidlize IBase; use IBase instead of IBinder.

* IBase is hidlized over hwbinder. GenericBinder
  is removed and Interface with name
  android.hidl.base@1.0::IBase is used instead.

* Removed AST::mImportedNamesForJava, because in Java,
  we always refer to a type with the full name. We don't
  import anything in the java file.

* IFoo.h now includes HidlSupport.h instead of
  HidlTransportSupport.h

Test: hidl_test
Test: hidl_test_java

Fix: 32756130
Fix: 33273293

Change-Id: I435ad7c68dea028a16252148b6f5778e3610b7cd
diff --git a/FQName.h b/FQName.h
index a781157..5e5ef08 100644
--- a/FQName.h
+++ b/FQName.h
@@ -96,6 +96,7 @@
 
     bool operator<(const FQName &other) const;
     bool operator==(const FQName &other) const;
+    bool operator!=(const FQName &other) const;
 
     // Must be called on an interface
     // ::android::hardware::Foo::V1_0::IBar
@@ -162,6 +163,9 @@
     void setVersion(const std::string &v);
 };
 
+static const FQName gIBaseFqName{"android.hidl.base@1.0::IBase"};
+static const FQName gIBasePackageFqName{gIBaseFqName.package(), gIBaseFqName.version(), ""};
+
 }  // namespace android
 
 #endif  // FQNAME_H_