A layout operates like a view that is global to your application and wraps around all the other views. The intended purpose of a layout when outputting HTML (as opposed to XML, web services, etc.) is to unify the location of the page header and footer.
The layout gets a special variable $view that contains the contents of the view for the current page; you will typically need to echo this out somewhere in your layout.
Changing layoutsYou can use a different layout by setting in your controller action:
mvc::$layout = 'newLayout';
To skip loading of the layout altogether and just display the view as it is then set the
mvc::$layout = false;