Rust_IO

Macro implementation for [rust_io] defining several operators to be used emulating Haskel [do notation]

```rust let rioprogram: RustIO = rustio! { _ <- RustIO::of(String::from("1981")); v <- RustIO::fromoption(Some(String::from("hello"))); t <- RustIO::fromoptionfunc(|| Some(String::from(" pure"))); z <- RustIO::fromfunc(|| String::from(" functional")); x <- RustIO::fromresult(Ok(String::from(" world"))); i <- RustIO::of(String::from("!!")); y <- RustIO::fromresult_func(|| Ok(String::from("!!")));

         yield v + &t + &z + &x + &i + &y;
    };
    println!("${:?}", rio_program.is_empty());
    println!("${:?}", rio_program.is_ok());
    assert_eq!(rio_program.get(), "hello pure functional world!!!!");

```