[WIP] initial support asynchronous update

I do not test well yet.

Related to #26

- [ ] Support Asynchronous Update
- [ ] Don't use `window-configuration-change-hook`
- [ ] Fix by @m2ym suggestions
- [ ] Fix by Stefan Monnier suggestions
- [ ] Drop Emacs 23 support