Fixes #53: BasicAck overload without Envelope object

Keeping the Envelope object around for a long time can be expensive
in the case of a delayed BasicAck, this patch allows the user to extract
the required information as a DeliveryInfo object, release the Envelope
and BasicAck the message at a later point.