ARROW-8840: [Rust][DataFusion] implement std::error:Error trait for ExecutionError
ARROW-8840: [Rust][DataFusion] implement std::error:Error trait for ExecutionError

Makes it easier for caller to propagate error.

Closes #7212 from houqp/error

Authored-by: Qingping Hou <333fd10814a9caf78fd740457f76aba4fa74a157@gmail.com>
Signed-off-by: Andy Grove <f68909d51919859739a1c5d24450a2cc1026e93b@gmail.com>

kou/arrow,wesm/arrow,laurentgo/arrow,apache/arrow,xhochy/arrow,xhochy/arrow,wesm/arrow,apache/arrow,kou/arrow,icexelloss/arrow,apache/arrow,kou/arrow,apache/arrow,kou/arrow,wesm/arrow,icexelloss/arrow,wesm/arrow,laurentgo/arrow,icexelloss/arrow,apache/arrow,icexelloss/arrow,apache/arrow,cpcloud/arrow,xhochy/arrow,cpcloud/arrow,wesm/arrow,apache/arrow,kou/arrow,xhochy/arrow,xhochy/arrow,xhochy/arrow,apache/arrow,laurentgo/arrow,apache/arrow,icexelloss/arrow,icexelloss/arrow,xhochy/arrow,xhochy/arrow,cpcloud/arrow,wesm/arrow,wesm/arrow,cpcloud/arrow,kou/arrow,apache/arrow,wesm/arrow,xhochy/arrow,xhochy/arrow,laurentgo/arrow,icexelloss/arrow,xhochy/arrow,kou/arrow,xhochy/arrow,kou/arrow,cpcloud/arrow,cpcloud/arrow,xhochy/arrow,laurentgo/arrow,laurentgo/arrow,icexelloss/arrow,cpcloud/arrow,kou/arrow,laurentgo/arrow,laurentgo/arrow,wesm/arrow,icexelloss/arrow,kou/arrow,icexelloss/arrow,apache/arrow,wesm/arrow,wesm/arrow,apache/arrow,xhochy/arrow,kou/arrow,cpcloud/arrow,kou/arrow,wesm/arrow,xhochy/arrow,laurentgo/arrow,cpcloud/arrow,icexelloss/arrow,cpcloud/arrow,laurentgo/arrow,laurentgo/arrow,icexelloss/arrow,cpcloud/arrow,apache/arrow,laurentgo/arrow,apache/arrow,kou/arrow,icexelloss/arrow,cpcloud/arrow,cpcloud/arrow,laurentgo/arrow,wesm/arrow,wesm/arrow,cpcloud/arrow,laurentgo/arrow,laurentgo/arrow,icexelloss/arrow,kou/arrow