What happens if handler is nil?

Maybe there should be a `if handler == nil { handler = DefaultHandler }`, which is just a no-op.