first batch of sigs

yes, or maybe

```
@sig (a,b,... -> c) -> (b,a,... -> c)
```