java_type: remove hard coded superclass information

Reviewer: @rlane @vaterlaus

This removes some hand-coded type information from java_model and replaces it with information from the ir (plus a few exceptions)