Implement initial draft of architechture