Handle 6 or more arguments to StateSetter.

In some cases I want to pass more than 6 arguments
but I can not. This change uses the optimized code path for most people
however it falls back to apply to handle the rare use case of many
arguments, instead of just silently failing.
Indeed. However at least things are no longer broken in a silent fashion