Actor improvements

@jdantonio Is there a branch/notes I can look at?
I gave it a quick look, to identify what is missing:
- [x] use pooled executor in SimpleActorRef
- [x] make sure only one message is processed at a time. Add proxy class before any executor which will ensure that only one block is being executed at a time for a given key (e.g. actor/agent object) (use this also for agents)
- [x] remove `@executor.shutdown` from `#shutdown`
- [ ] Unnecessary method lookup cache dropping, see [source](https://github.com/jdantonio/concurrent-ruby/blob/master/lib/concurrent/actor/simple_actor_ref.rb#L20), originaly #67
- [ ] make sure all `IVar`s are resolved when actor is shutdown before processing the message
- [ ] split Ref to Ref and Core ?
- [ ] merge actress into concurrent-ruby

**Later**
- [ ] un/become ?
- [ ] dead letter routing ?