Fix the SuperficialValidator to properly handle upstream impact on AnnotationValues

Fix the SuperficialValidator to properly handle upstream compilation problems resulting in unreasonable AnnotationValues (specifically  "<any>" and "<error>" strings appearing instead of real values where there are missing imports or other upstream compilation issues).  Migrate isTypeOf from Dagger to perform the key test (i.e. is there a sane match between the expected annotation value type and the type returned by the processor environment)

-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=75599279
This change was introduced between java 1.0 and 1.1. Since 1.1 you can use `byte.class`, `boolean.class`
`boolean.class   ==   Boolean.TYPE` always true