Fix JIT binding attempts for generic or annotated keys.

This should never happen normally, but in some cases - notably proguard cases - where an `@Provides`  method is not pre-loaded, the attempt to bind falls into the jit-binding and built-in binding case. This results in a null className, and the current error is obscure.  Instead, just throw an IAE with the key which is caught and reported in a less crappy way.

Unfortunately, this is nearly impossible to test, without hacking up the build system. :(
Merge pull request #352 from cgruber/errormessage

Report invalid JIT binding attempts for generic or annotated keys cleanly.