Bug 1023662 - [User story] Show 5 day week view r=gaye

**WIP**, still going to clean up the code and try to use external templates for most of the elements.. I have a few more changes locally (trying to abstract it better so that we can use same logic for day view as well), but will probably take another full day to clean up the code..

I'll rebase this later and squash commits.
you're right, this should probably be executed by all listeners.. the thing is, if we call `dispatch` it will dispatch to all listeners... so it needs a different logic. I'll fix this tomorrow and write a test to make sure behavior is correct (this would be easier with js-signals)