Updated :future and :promise behaviors to match Obligation mixin.
Merge branch 'master' into agent