Sync from Google's internal repository, mostly fixes.

Fix an OOM, fix supertype members injection, and component implemenation constructors where factories do members-injection.