Create a cujoJS flavor of the client

Both flavors:

- user is present with a choice of the flavors when they login, can also switch in the header
- use bower to manage dependencies
    - `bower install` to update
    - installed to src/main/webapp/assets/lib
    - gitignore files that are never used client-side

cujoJS flavor:

- uses curl.js to load modules
- uses msgs.js for client-server communication
- refactored monolithic portfolio.js into individual modules
- centralize initialization and message bus usage in main.js