SI-7841 Remove commented out AnyRef specialization from Function{0,1}.

In a sign of decreased optimism about that facility.
SI-7847 Static forwarders for case apply/unapply

These were excluded in f901816b3f because at the time they
were compiler fiction and translated to calls to the case
class constructor or accessors.

But since they are now bona-fide methods (albeit still occasionally
bypassed as an optimization), we can expose them conveniently to our
Java brethren.

The cut-and-pastiness of GenBCode starts to hinder maintenance.
Here's a report of further duplication that we have to fix up
post haste: https://gist.github.com/retronym/6334389
SI-7841 Remove AnyRef specialization from AbstractPartialFunction

This was missed in cc3badae1

Compatibility classes for formerly specialized variants used
by Scalacheck have been added as a stopgap measure until we
publish the next milestone.
SI-7841 More robust unspecialization of names

Names like `T1$sp`, which can arise from `AnyRef` specialization,
were leading to negative length Names if they ever passed through
`unspecializedName` or `splitSpecializedName`. This code path was
touched when printing the tree of a certain AnyRef specialized
classes after specialization, such as `AbstractPartialFunction`
(which had such specialization until a few commits ago.)

This commit handles that case correctly, and generally hardens
against unexpected names, which could pop up from third party
classes.

The documentation for `splitSpecializedName` transposed the
class and method specializations. The things you discover
when you turn examples in documentation in to test cases!

In addition, we now require non-negative length and offset in
`newTermName`
Merge pull request #2950 from retronym/ticket/7841

Damage control related to AnyRef specialization
Merge pull request #2951 from retronym/ticket/7847

SI-7847 Static forwarders for case apply/unapply