Properly coerce schedule options; support ActiveSupport durations.

Since durations use seconds as the base unit, we have to detect a
duration and convert it to ms, which is a little gross.
We don't need to include the CreateOptions since the opts are all listed in the defaults.