Pass an options object around instead of using varargs everywhere