components can now be positioned
added a new component to support multi layers