auto: add docs to datatypes and constructors
auto: introduce option type functions, refactor
auto: Don't distribute link-free parallel compositions

Add a test to exercise this.