Better remuxing options for audio and video codecs

- Added video-codec option
- `video-codec` accepts multiple comma-separated values. Any codec
specified will be considered whitelisted and will be remuxed/copied
instead of converted. The first codec specified in the list will be the
codec all non-whitelisted codecs are converted to when encountered.
- `audio-codec` updated to function the same way `video-codec` does now.
Supports multiple comma-separated values and will remux/copy when
appropriate. Conversions will be to the first codec specified (except in
instances where an iOS audio channel is being created).