Remove a noisy debugging call
Speed up implementations of

We now have an index of all classes implementing each interface.  We can
use that to eliminate a linear scan of all classes.
Modify anyTarget to dispatch invoke-interface correctly.
Merge branch 'ssa' of github.com:travitch/dalvik into ssa
Change some of the virtual dispatch logic in the class hierarchy analysis

The change relates to matching methods by signature.  The old matching
was by equality, and this worked almost all of the time.  One exception
arises from synthetic bridge methods created by javac, particularly in
the presence of generics:

> abstract class Singleton<T> {
>   private T instance;
>   abstract T create();
>   T get() {
>     if(instance == null)
>       instance = create();
>   }
> }

When this code is "instantiated" for a particular T (by deriving from
Singleton), the programmer has to implement create:

> Foo create() { ... }

javac creates an additional synthetic bridge method:

> Object create() { ... }

This isn't legal at the language because this is an overload
discriminated only on return type, but it seems to be okay at the VM
level.  When this occurs, we have to look for the most *specific* match.
This change implements something like most-specific matching logic - it
really only prefers anything else to an Object return type, if
available.  This will be enough to deal with this case... full
most-specific matching might be implemented later if necessary.