beginning fleshing out the architecture