Add methods to a class to allow setting attributes using a hash (Foo.new :bar => 7). Add methods to the class to specify default attribute values and message names that the values must respond to.