Add option to configure Application channels

As discussed in #1321. Documentation still to come. 
I should note that this implementation does not allow access to properties set by options. e.g.

```js
      this.app = new Marionette.Application({
        channelName: 'foo',
        channel: function () {
          return this.channelName;
        }
      });
```
will not work.

Some solutions I can think of are

* call `_.extend(this, options);` before getting the channel (and again at line 19)
*  add this.options to the application before getting the channel (would also replace line 10 with Marionette.getOption)