chore(input): Pull `get_input` and `set_input` into an OO service

Also adds test stubs to be implemented when the global state is removed.

Fixes #7091
Merge pull request #7433 from ewinslow/oo-input

chore(input): Pull `get_input` and `set_input` into an OO service
chore(annotations): Move annotations logic into an OO service

Refs #6798