Dry up options and headers logic, allow headers to be passed to OPTIONS requests