Explain the Struts1/Struts2/MVC application architecture?