Preliminary Multi-OS support

The new top-level key `os` in `.travis.yml` is now expanded if the repository has the `:multi_os` feature enabled.

Queues that recognize the `os` as a key must be configured in order for the job to be queued for them; the job will be sent to the first queue in `Travis.config.queues` which matches any of the recognized parameter. The `os` value can be any arbitrary string value, as long as it matches the desired queue's configuration. (This could allow finer matching for OS version, for example.)

Currently, all jobs will receive the identical build scripts.