Simplify overly long fully specified type names by stripping out the current

namespace prefix if possible. Properly include "types.h" for regular
(non-interface) types. Emit full names where appropriate.
diff --git a/Interface.cpp b/Interface.cpp
index 89bd10e..ec8d488 100644
--- a/Interface.cpp
+++ b/Interface.cpp
@@ -65,7 +65,7 @@
 
         out << name
             << " = "
-            << this->name()
+            << fullName()
             << "::asInterface("
             << binderName
             << ");\n";
@@ -73,7 +73,7 @@
         out << "_aidl_err = ";
         out << parcelObjDeref
             << "writeStrongBinder("
-            << this->name()
+            << fullName()
             << "::asBinder("
             << name
             << "));\n";