fleshing out of basic architecture