what is the difference between opera, oratorio and cantata