Catch Player errors and gracefully stop them.
Catch Player errors and gracefully stop them.

This also introduces the concept of the after function taking a single
parameter, the current player. This is useful for error handling, e.g.
checking Player.error.

Fixes #291

imayhaveborkedit/discord.py,mgardne8/discord.py,lgkern/PriestPy,khazhyk/discord.py,variablehair/Eggplantato,Harmon758/discord.py,Rapptz/discord.py,Harmon758/discord.py,rapptz/discord.py