Currently, you cannot reorder the decorators on route methods because Binder expects the wrapped method to have certain attributes. This is a major annoyance because it is super picky in which order stuff needs to be applied.
We should review all the wrappers and use wraps or update_wrapper from functools, which will copy the properties of the wrapped function, so it becomes much more user-friendly.
If there are decorators which change which arguments the function accepts (no_scoping_required is one of those, I think) we should attempt to make it order-independent as well.