Continued Language API work

Focuses on #2968 - __minus its comments, so far__