Use Types.isSameType for comparing TypeMirrors.

The documentation on TypeMirror.equals states "Semantic comparisons of type equality should instead use Types.isSameType(TypeMirror, TypeMirror). The results of t1.equals(t2) and Types.isSameType(t1, t2) may differ.".

Closes #316.