pub fn component(c: fn(Context, a) -> #(Context, List(Element)), props: a) -> Element
pub fn render(ctx: Context, elements: List(Element)) -> #( Context, List(Element), )