Starting the kind stuff
Kind preserving substitutions formalized
Merge branch 'kind'