American usage - mainly in the Deep South - when you have your big meal at lunch, the evening meal is supper (ie it was soup because you'd already had a big meal). So on Sundays you have breakfast, dinner, and supper. Other days you have breakfast, lunch and dinner. I didn't know it had a class connotation, in the US it's very regional and basically unused outside the South, as far as I know (though it sounds like it may have hipster usage that I'm, um, un-hip to.)