working dtmf detection, needs cleanup and tests