Use RefactoringFeedback objects in Java.

R=brianwilkerson@google.com, jwren@google.com
BUG=

Review URL: https://codereview.chromium.org//539353002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@39889 260f80e4-7a28-3924-810f-c04153c831b5
Use union types to merge type propagation at if-joins.

Also, use [Map] instead of [HashMap], avoiding some [null]s, and
throw more helpful exception in AnalysisTask.java.

R=brianwilkerson@google.com, jwren@google.com
BUG=

Review URL: https://codereview.chromium.org//541143002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@39890 260f80e4-7a28-3924-810f-c04153c831b5