pub fn and<A, B>(left: A, right: B) -> impl Signal<Item = bool> where
    A: Signal<Item = bool>,
    B: Signal<Item = bool>,