Use functools.wrap to preserve method metadata
Use functools.wrap to preserve method metadata

This makes introspection a lot more useful as decorated methods now show
their original name instead of the wrapper names 't' and 's'.

sparkslabs/guild,sparkslabs/guild,sparkslabs/guild