Error keys

This is a simple change to allow additional keys in error objects to be passed along when returning them in callbacks, which helps differentiate errors at the client end if needed.