BAP-6590: Base Client Side Architecture

Such controllers are named Page Component. Page Components accept options objects, run initialization actions an destroy initialized elements (views, models, collections and even sub-components) when necessary. Functionally a "Page Component" is similar to a "Controller" component in Chaplin, however it implements a different flow.