RobL: updates to design
RobL:rebaseing