implement Key.transpose
add expectation assert class of returned instance
Merge branch 'master' into redesign-with-ddd
refactor Key class methods
redesign
redesign
Merge branch 'redesign-with-ddd'

Conflicts:
	lib/karaoke_machine.rb