Persistent Inputs

Implements the first strategy mentioned in #8