decouple the emitter from the node API.
rework the node API.
add unit tests for the node API.
Merge https://github.com/BlackHC/WML