(PUP-2794) Update Callable Type specification

PUP-2794 introduces the ability to specify a Callable with Union
type (ignored type). The specification only shows the result of this
internal use of Union, the Union type is not documented as it is an
implementation detail.

This updates the specification as the type algebra of Callable
has changed in accordance with PUP-2794.
(PUP-2794) Replace "those that" with "those who"
(PUP-2794) Correct the erronous statement that Callable is Callable[0,0]

The text stated that Callable is the same as Callable[0,0] which is
wrong since it is Callable[0, default] (i.e. no type constraint, and
any number of parameters).
(PUP-2794) Add note about contravariance
Merge pull request #5 from hlindberg/PUP-2794_callable-signature-update

(PUP-2794) Update Callable Type specification