RUBY-595 abstract message base class