Broken up the model into interfaces and a class hierarchy
part 3
Authored by: hotzst 2008-07-31
Parent: [r349]
Child: [r351]