Introduce :skip metadata as alias for :pending.

This allows the two concepts to be separated in the future.
Pending blocks will now be executed and marked as failed if they
succeed.

This is a backwards incompatible change that makes the behaviour of a
top-level `pending` call the sames as one used within an `it` block.

The old "never run this example" behaviour is still available via the
`xit` method or the `:skip` metadata option.

Implements #1208.
Allow extensions to change how pending blocks are run.
Better documentation and spec for pending_executors.
Collapse pending block to a one-liner.

While this does require an explanatory comment, the previous code wasn't
exactly obvious either and probably needed a comment anyway.
Split pending implementation into its own method.

There is a small amount of duplication between pending and
define_example_method, which I believe is justified by the simpler code.
Better language around skip and pending.
Unroll one-item loop.
Fix broken cuke, and explicitly defined reason behaviour.
Add skip method as a shortcut to create a skipped example.
Clarify new pending behaviour in Changelog.