factored out page layout
added footer component