Replace `notify_waiting` hook with `will_(reject|resolve)` and did_(reject|resolve)`.
Rewrite `Promise::Celluloid` to use an Actor for async. Much betterrer.
Re-enable `:celluloid` in DCI test.
On JRuby, test that trying to create an EM backed promise raises an exception.
On JRuby we can't use `define_singleton_method`, so use extension.

This means that we can't clean the player of the extra behaviour
afterwards. Kind of lame. :(
Update travis.yml.