Tolerate missing type information from other processors without breaking Dagger's generators and validation.

Fixes issue #322 by deferring the writing of the generated module adapter until all the generation is done in-memory, and interpreting Error nodes from the AST more liberally, taking the raw type information from the text of the Error node.

Per #322 this has some limitations - type information from not-yet-compiled-types will only process correctly where the fully qualified domain name is present, since these types will not have package information if they are not expressed in the source as FQCNs.  Therefore, Dagger will generate code that doesn't have the correct import statements.  Additionally, this will not handle generic types.