A Product Line Architecture for Web Applications