Add additional known type annotations

This sets up a known type annotation for the initial self receiver for a
method, since that is stored with the method as well so we can propagate
this.

We also store a known type annotation for an object allocation if that
has a known cached receiver class type that we're instantiating.

Also does an additional cleanup of code no longer used.