trait/promise: adding finally and catch

In order to be able to mixin and have easy api
promise-adapter: weird spacing
Merge pull request #82 from Aintaer/promisetrait

Promise callback and trait additions