Changed normalize-arity to coalesce arity-at-least with adjacent numbers.

For instance, (normalize-arity (list 1 (arity-at-least 2))) now produces
(arity-at-least 1).  The implementation and the tests for normalize-arity both
reflect this change.  The randomized tests now also check that the output
represents the same arity as the input.
Re-provide normalize-arity from racket/function.
Added documentation for normalize-arity.
Moved normalized-arity?, arity=?, and arity-includes? into racket/function.
Documented normalized-arity?, arity=?, and arity-includes?.
Removed unnecessary duplication of normalize-arity.
Updated contracts for arity-related functions.

Added contract checking to arity=?, arity-includes?, and normalized-arity.
Removed contract checking from normalize-arity to make it a total predicate.
Updated documentation for normalize-arity to reflect this change.