Here is the architecture and design for iteration 1