SI-7502 removing non-existent element from ListMap returns same map.

Current imperative version constructs a new ListMap regardless of
the fact the map doesn't contain the element. Replace it with the
tail-recursive variant that conserves. Also replace some usages with
the invariant now held.
SI-7469 Remove deprecated elements in Java{Conversions,Converters}
Print raw types correctly.

The "For convenience, these are usable as stub implementations"
bit has generated surprisingly few angry letters, but I noticed
today it blows it on raw types. Or, used to blow it.

  /** As seen from class Sub, the missing signatures are as follows.
   *  For convenience, these are usable as stub implementations.
   *  (First one before this commitw as 'def raw(x$1: M_1)'
   */

  def raw(x$1: M_1[_ <: String]): Unit = ???
  def raw(x$1: Any): Unit = ???
Merge pull request #2524 from soc/SI-7469-java-collections

SI-7469 Remove deprecated elements in Java{Conversions,Converters}
Merge pull request #2598 from paulp/pr/raw-type-stubs

Print raw types correctly.
Make all numeric coercions explicit.

Optimistically, this is preparation for a day when we don't
let numeric types drift with the winds. Even without the optimism
it's a good idea. It flushed out an undocumented change in
the math package object relative to the methods being forwarded (a
type is widened from what is returned in java) so I documented
the intentionality of it.

Managing type coercions manually is a bit tedious, no doubt,
but it's not tedious enough to warrant abandoning type safety
just because java did it.
Merge pull request #2593 from paulp/pr/no-numeric-widen

Make all numeric coercions explicit.
Merge pull request #2579 from vigdorchik/list_map

SI-7502 removing non-existent element from ListMap leaves it unchaged.