Refactored to prepare for easier addition of new chord types