Refactor controls and add instrument selection support