Added a function `decoratorx` using the `FunctionMaker` and thus
preserving the signature of `__code__` objects. Then fixed three small bugs:
- Sphinx was printing a few warnings when building the documentation, as
signaled by Tomasz Kłoczko
- functions decorated with `decorator.contextmanager` were one-shot,
as discovered by Alex Pizarro.
- `decorator.decorator` was not passing the kwsyntax argument.