plugins: add Plugin.action_chain_cancellable
plugins: add Plugin.action_chain_cancellable

takes an extra argument which is a callback to call if it's cancelled, and
returns an extra value which is a function you can call to cancel it.

Plugin.action_chain is now a special case of Plugin.action_chain_cancellable

frostyfrog/mark2,SupaHam/mark2,frostyfrog/mark2,SupaHam/mark2