Add a Name property

Blueprint is going to abdicate responsibility for determining the name
of a module.  Add a name property, and a method to retreive the name.

Test: build.ninja identical
Change-Id: I09c6f5283cd6e28ad4b04c24c5ab8b00f71ae2ab
diff --git a/android/module.go b/android/module.go
index 06f1fca..52280d2 100644
--- a/android/module.go
+++ b/android/module.go
@@ -99,9 +99,12 @@
 	InstallInData() bool
 }
 
-type commonProperties struct {
+type nameProperties struct {
+	// The name of the module.  Must be unique across all modules.
 	Name string
-	Deps []string
+}
+
+type commonProperties struct {
 	Tags []string
 
 	// emit build rules for this module
@@ -177,7 +180,10 @@
 	base := m.base()
 	base.module = m
 
-	propertyStructs = append(propertyStructs, &base.commonProperties, &base.variableProperties)
+	propertyStructs = append(propertyStructs,
+		&base.nameProperties,
+		&base.commonProperties,
+		&base.variableProperties)
 
 	return m, propertyStructs
 }
@@ -250,6 +256,7 @@
 	// the thing pattern to good use.
 	module Module
 
+	nameProperties          nameProperties
 	commonProperties        commonProperties
 	variableProperties      variableProperties
 	hostAndDeviceProperties hostAndDeviceProperties
@@ -270,6 +277,10 @@
 	hooks hooks
 }
 
+func (a *ModuleBase) Name() string {
+	return a.nameProperties.Name
+}
+
 func (a *ModuleBase) base() *ModuleBase {
 	return a
 }