core: fix up kind error reporting
core: solve kind constrains via sums as well