Export cc types for art to inherit from

Art needs a custom module type in order to perform complicated
build logic like depending on environment variables and varying
cflags based on cpu variant.  Export enough of the types and
functions from cc for art_cc_library to inherit from cc_library.

While I'm touching every line, also rename the New* methods
to *Factory.

Change-Id: I7123aa47019c4ced7a1ab57c394225bc7844b5ea
diff --git a/cc/toolchain.go b/cc/toolchain.go
index 291821b..e4d23bd 100644
--- a/cc/toolchain.go
+++ b/cc/toolchain.go
@@ -20,7 +20,7 @@
 	"android/soong/common"
 )
 
-type toolchainFactory func(archVariant string, cpuVariant string) toolchain
+type toolchainFactory func(archVariant string, cpuVariant string) Toolchain
 
 var toolchainFactories = map[common.HostOrDevice]map[common.ArchType]toolchainFactory{
 	common.Host:   make(map[common.ArchType]toolchainFactory),
@@ -33,7 +33,7 @@
 	toolchainFactories[hod][arch] = factory
 }
 
-type toolchain interface {
+type Toolchain interface {
 	GccRoot() string
 	GccTriple() string
 	Cflags() string