JH's idea: wrap the result of all `#[logic]` functions in `Box` so users can write logic functions that return unsized types.