More interactive functions, fixes

Here's a pull request for review... We can either merge it or I can then push directly to main.