Use the toString method for stringifying Notes.
Use multimethods instead of protocols for modeling musical structures.

Why use multimethods instead of protocols?

* Protocols and Records are cumbersome to use in interactive
  development, as you have to reevaluate all functions that use a record
  after changing its definition.
* With a protocol you can only dispatch on the first parameter, but to
  make the play function more convenient for currying, the playable
  structure should be the last param.
* Performance is not an issue (I think)