Kew improvements:
- add type templates to everything
- add a done() method that matches the Q API
- expose Promise as a type