Establish the basic architecture