Hi!
I'm not at all new to programming, I know OO-concepts but I don't have any
hands-on experience with designing/programming OO except for small tests.
I'm also a Ruby newbie, but have been coding a LOT of C, (advanced)
Shellscripts and Python.

I need advice on good design, taking features of Ruby into consideration.

I want a tree of objects like this:

a1
 b1
  c1
 b2
  c1
  c2
   d1

and so on...  The a#-objects will hold default values and methods for b# and
b# will hold default values for c# and so on. When a value in a# is changed
I want its children to immediatly inherit them also, if they aren't
overridden. b# will be subclasses of a#, c# will be subclasses of b# etc.
I have to be able to dynamically (at runtime) add and delete children.

What is a good way to design this with the OO-features of Ruby, keeping it
as readable and clean as possible?

Regards,
Per Wigren