See the examples
folder to get a sense of how Theatre works.
```rust use theatre::prelude::*;
struct Accumulator { count: i32, }
impl Actor for Accumulator {}
struct Increment;
impl Message for Increment { type Return = (); }
struct GetCount;
impl Message for GetCount { type Return = i32; }
impl Handler
impl Handler
async fn main() { let mut acc = Accumulator::default().start().await.0;
assert_eq!(0, acc.send(GetCount).await.unwrap());
acc.send(Increment).await.unwrap();
acc.send(Increment).await.unwrap();
acc.send(Increment).await.unwrap();
acc.send(Increment).await.unwrap();
println!("Value: {}", acc.send(GetCount).await.unwrap());
assert_eq!(4, acc.send(GetCount).await.unwrap());
}
```