Improve Error interoperability with std
Improve Error interoperability with std

- Add From implementaion for io::Error, so nix::Error can be turned into
  a std::io::Error.
- Add From from Errno - a little more idiomatic than from_errno these days
- Implement std::error::Error for nix::Error

nix-rust/nix,nikklassen/nix-rust,brayniac/nix-rust,arthurprs/nix-rust,brayniac/nix-rust,berkowski/nix,Susurrus/nix,arthurprs/nix-rust,MarkusJais/nix-rust,utkarshkukreti/nix-rust,xd009642/nix,berkowski/nix,geofft/nix-rust,xd009642/nix,berkowski/nix,kamalmarhubi/nix-rust,posborne/rust-nix,carllerche/nix-rust,geofft/nix-rust,asomers/nix,carllerche/nix-rust,Susurrus/nix,carllerche/nix-rust,asomers/nix,MarkusJais/nix-rust,marjakm/nix-rust,Susurrus/nix,utkarshkukreti/nix-rust,geofft/nix-rust,cmr/nix-rust,kamalmarhubi/nix-rust,MarkusJais/nix-rust,cmr/nix-rust,brayniac/nix-rust,nikklassen/nix-rust,marjakm/nix-rust,posborne/rust-nix,nikklassen/nix-rust,marjakm/nix-rust,xd009642/nix,kamalmarhubi/nix-rust,utkarshkukreti/nix-rust,cmr/nix-rust,arthurprs/nix-rust,nix-rust/nix,posborne/rust-nix