Модули марионетки устарели. Лучше ими не пользоваться. Берите любое решение: requirejs, commonjs или babeljs с es6-модулями.
Приложение - это только контейнер, у вас может быть их несколько. LayoutView, Region и *View - это наборы сущностей, которые позволяют сделать каскад представлений. LayoutView хранит в себе список регионов, каждый из которых в свою очередь может внутри себя хранить LayoutView или любое другое представление. Вообще, LayoutView это ItemView с примесью Region.