Implement basic Piano wrapper and EventDispatcher.

Repurpose dead project name because I can and I like the name.