(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"
(maint) Add explanation of algebra notation and link to it where used
(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
Merge pull request #12 from hlindberg/maint_add-algebra-notation

(maint) Add explanation of algebra notation and link to it where used
Merge branch 'master' of git@github.com:puppetlabs/puppet-specifications.git
(maint) Fix language after review.