Application testable Delivery - API Change

  * Add Ack/Nack/Reject to the Channel
  * Add Delivery.Acknowledger interface delegating to the channel
  * Drop Delivery.Cancel

By using an Acknowledger delegate, it remains possible to multiplex
deliveries from multiple channels to the same handler without requiring
the application to keep a reverse mapping from delivery back to the
source channel for the common case of Acks.

Application tests can now simulate deliveries, and track acknowledgments
per source channel via a custom implementation.

Remove the `Cancel` delegate in Delivery.  Use the Channel directly to
cancel a subscription.

To handle Cancel, including other richer interactions with the Channel
in application consumers, the channel reference should be passed along
with the delivery in an application specific type to the consumer.
Run integration tests with build tag +integration

The examples still use the AMQP_URL environment so that they stay
documented.
Go back to AMQP_URL environment variable.

This uses a reasonable default when the integration tag is used, but the
AMQP_URL environment isn't set.
Cleanup printfs found with go vet